1#![warn(clippy::all)]
4#![allow(unused_parens, unused_mut, unused_imports, nonstandard_style)]
5
6use bitflags::bitflags;
7use fidl::client::QueryResponseFut;
8use fidl::encoding::{MessageBufFor, ProxyChannelBox, ResourceDialect};
9use fidl::endpoints::{ControlHandle as _, Responder as _};
10pub use fidl_fidl_test_compatibility__common::*;
11use futures::future::{self, MaybeDone, TryFutureExt};
12use zx_status;
13
14#[derive(Debug, PartialEq)]
15pub struct ArraysStruct {
16 pub bools: [bool; 3],
17 pub int8s: [i8; 3],
18 pub int16s: [i16; 3],
19 pub int32s: [i32; 3],
20 pub int64s: [i64; 3],
21 pub uint8s: [u8; 3],
22 pub uint16s: [u16; 3],
23 pub uint32s: [u32; 3],
24 pub uint64s: [u64; 3],
25 pub float32s: [f32; 3],
26 pub float64s: [f64; 3],
27 pub enums: [DefaultEnum; 3],
28 pub bits: [DefaultBits; 3],
29 pub handles: [fidl::Handle; 3],
30 pub nullable_handles: [Option<fidl::Handle>; 3],
31 pub strings: [String; 3],
32 pub nullable_strings: [Option<String>; 3],
33 pub structs: [ThisIsAStruct; 3],
34 pub nullable_structs: [Option<Box<ThisIsAStruct>>; 3],
35 pub unions: [ThisIsAUnion; 3],
36 pub nullable_unions: [Option<Box<ThisIsAUnion>>; 3],
37 pub arrays: [[u32; 3]; 3],
38 pub vectors: [Vec<u32>; 3],
39 pub nullable_vectors: [Option<Vec<u32>>; 3],
40 pub tables: [ThisIsATable; 3],
41 pub xunions: [ThisIsAXunion; 3],
42}
43
44impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for ArraysStruct {}
45
46#[derive(Debug, PartialEq)]
47pub struct EchoEchoArraysRequest {
48 pub value: ArraysStruct,
49 pub forward_to_server: String,
50}
51
52impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoArraysRequest {}
53
54#[derive(Debug, PartialEq)]
55pub struct EchoEchoArraysResponse {
56 pub value: ArraysStruct,
57}
58
59impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoArraysResponse {}
60
61#[derive(Debug, PartialEq)]
62pub struct EchoEchoArraysWithErrorRequest {
63 pub value: ArraysStruct,
64 pub result_err: DefaultEnum,
65 pub forward_to_server: String,
66 pub result_variant: RespondWith,
67}
68
69impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
70 for EchoEchoArraysWithErrorRequest
71{
72}
73
74#[derive(Debug, PartialEq)]
75pub struct EchoEchoEventRequest {
76 pub value: Struct,
77}
78
79impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoEventRequest {}
80
81#[derive(Debug, PartialEq)]
82pub struct EchoEchoStructNoRetValRequest {
83 pub value: Struct,
84 pub forward_to_server: String,
85}
86
87impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
88 for EchoEchoStructNoRetValRequest
89{
90}
91
92#[derive(Debug, PartialEq)]
93pub struct EchoEchoStructRequest {
94 pub value: Struct,
95 pub forward_to_server: String,
96}
97
98impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoStructRequest {}
99
100#[derive(Debug, PartialEq)]
101pub struct EchoEchoStructResponse {
102 pub value: Struct,
103}
104
105impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoStructResponse {}
106
107#[derive(Debug, PartialEq)]
108pub struct EchoEchoStructWithErrorRequest {
109 pub value: Struct,
110 pub result_err: DefaultEnum,
111 pub forward_to_server: String,
112 pub result_variant: RespondWith,
113}
114
115impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
116 for EchoEchoStructWithErrorRequest
117{
118}
119
120#[derive(Debug, PartialEq)]
121pub struct EchoEchoTableRequest {
122 pub value: AllTypesTable,
123 pub forward_to_server: String,
124}
125
126impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoTableRequest {}
127
128#[derive(Debug, PartialEq)]
129pub struct EchoEchoTableResponse {
130 pub value: AllTypesTable,
131}
132
133impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoTableResponse {}
134
135#[derive(Debug, PartialEq)]
136pub struct EchoEchoTableWithErrorRequest {
137 pub value: AllTypesTable,
138 pub result_err: DefaultEnum,
139 pub forward_to_server: String,
140 pub result_variant: RespondWith,
141}
142
143impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
144 for EchoEchoTableWithErrorRequest
145{
146}
147
148#[derive(Debug, PartialEq)]
149pub struct EchoEchoVectorsRequest {
150 pub value: VectorsStruct,
151 pub forward_to_server: String,
152}
153
154impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoVectorsRequest {}
155
156#[derive(Debug, PartialEq)]
157pub struct EchoEchoVectorsResponse {
158 pub value: VectorsStruct,
159}
160
161impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoVectorsResponse {}
162
163#[derive(Debug, PartialEq)]
164pub struct EchoEchoVectorsWithErrorRequest {
165 pub value: VectorsStruct,
166 pub result_err: DefaultEnum,
167 pub forward_to_server: String,
168 pub result_variant: RespondWith,
169}
170
171impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
172 for EchoEchoVectorsWithErrorRequest
173{
174}
175
176#[derive(Debug, PartialEq)]
177pub struct EchoEchoXunionsRequest {
178 pub value: Vec<AllTypesXunion>,
179 pub forward_to_server: String,
180}
181
182impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoXunionsRequest {}
183
184#[derive(Debug, PartialEq)]
185pub struct EchoEchoXunionsResponse {
186 pub value: Vec<AllTypesXunion>,
187}
188
189impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for EchoEchoXunionsResponse {}
190
191#[derive(Debug, PartialEq)]
192pub struct EchoEchoXunionsWithErrorRequest {
193 pub value: Vec<AllTypesXunion>,
194 pub result_err: DefaultEnum,
195 pub forward_to_server: String,
196 pub result_variant: RespondWith,
197}
198
199impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
200 for EchoEchoXunionsWithErrorRequest
201{
202}
203
204#[derive(Debug, PartialEq)]
205pub struct EchoEchoArraysWithErrorResponse {
206 pub value: ArraysStruct,
207}
208
209impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
210 for EchoEchoArraysWithErrorResponse
211{
212}
213
214#[derive(Debug, PartialEq)]
215pub struct EchoEchoStructWithErrorResponse {
216 pub value: Struct,
217}
218
219impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
220 for EchoEchoStructWithErrorResponse
221{
222}
223
224#[derive(Debug, PartialEq)]
225pub struct EchoEchoTableWithErrorResponse {
226 pub value: AllTypesTable,
227}
228
229impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
230 for EchoEchoTableWithErrorResponse
231{
232}
233
234#[derive(Debug, PartialEq)]
235pub struct EchoEchoVectorsWithErrorResponse {
236 pub value: VectorsStruct,
237}
238
239impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
240 for EchoEchoVectorsWithErrorResponse
241{
242}
243
244#[derive(Debug, PartialEq)]
245pub struct EchoEchoXunionsWithErrorResponse {
246 pub value: Vec<AllTypesXunion>,
247}
248
249impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect>
250 for EchoEchoXunionsWithErrorResponse
251{
252}
253
254#[derive(Debug, PartialEq)]
255pub struct Struct {
256 pub primitive_types: PrimitiveTypes,
257 pub default_values: DefaultValues,
258 pub arrays: Arrays,
259 pub arrays_2d: Arrays2d,
260 pub vectors: Vectors,
261 pub handles: Handles,
262 pub strings: Strings,
263 pub default_enum: DefaultEnum,
264 pub i8_enum: I8Enum,
265 pub i16_enum: I16Enum,
266 pub i32_enum: I32Enum,
267 pub i64_enum: I64Enum,
268 pub u8_enum: U8Enum,
269 pub u16_enum: U16Enum,
270 pub u32_enum: U32Enum,
271 pub u64_enum: U64Enum,
272 pub default_bits: DefaultBits,
273 pub u8_bits: U8Bits,
274 pub u16_bits: U16Bits,
275 pub u32_bits: U32Bits,
276 pub u64_bits: U64Bits,
277 pub structs: Structs,
278 pub unions: Unions,
279 pub table: ThisIsATable,
280 pub xunion: ThisIsAXunion,
281 pub b: bool,
282}
283
284impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for Struct {}
285
286#[derive(Debug, PartialEq)]
287pub struct VectorsStruct {
288 pub bools: Vec<bool>,
289 pub int8s: Vec<i8>,
290 pub int16s: Vec<i16>,
291 pub int32s: Vec<i32>,
292 pub int64s: Vec<i64>,
293 pub uint8s: Vec<u8>,
294 pub uint16s: Vec<u16>,
295 pub uint32s: Vec<u32>,
296 pub uint64s: Vec<u64>,
297 pub float32s: Vec<f32>,
298 pub float64s: Vec<f64>,
299 pub enums: Vec<DefaultEnum>,
300 pub bits: Vec<DefaultBits>,
301 pub handles: Vec<fidl::Handle>,
302 pub nullable_handles: Vec<Option<fidl::Handle>>,
303 pub strings: Vec<String>,
304 pub nullable_strings: Vec<Option<String>>,
305 pub structs: Vec<ThisIsAStruct>,
306 pub nullable_structs: Vec<Option<Box<ThisIsAStruct>>>,
307 pub unions: Vec<ThisIsAUnion>,
308 pub nullable_unions: Vec<Option<Box<ThisIsAUnion>>>,
309 pub arrays: Vec<[u32; 3]>,
310 pub vectors: Vec<Vec<u32>>,
311 pub nullable_vectors: Vec<Option<Vec<u32>>>,
312 pub tables: Vec<ThisIsATable>,
313 pub xunions: Vec<ThisIsAXunion>,
314}
315
316impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for VectorsStruct {}
317
318#[derive(Debug, PartialEq, PartialOrd)]
319pub struct Arrays {
320 pub b_0: [bool; 1],
321 pub i8_0: [i8; 1],
322 pub i16_0: [i16; 1],
323 pub i32_0: [i32; 1],
324 pub i64_0: [i64; 1],
325 pub u8_0: [u8; 1],
326 pub u16_0: [u16; 1],
327 pub u32_0: [u32; 1],
328 pub u64_0: [u64; 1],
329 pub f32_0: [f32; 1],
330 pub f64_0: [f64; 1],
331 pub handle_0: [fidl::Handle; 1],
332 pub b_1: [bool; 3],
333 pub i8_1: [i8; 3],
334 pub i16_1: [i16; 3],
335 pub i32_1: [i32; 3],
336 pub i64_1: [i64; 3],
337 pub u8_1: [u8; 3],
338 pub u16_1: [u16; 3],
339 pub u32_1: [u32; 3],
340 pub u64_1: [u64; 3],
341 pub f32_1: [f32; 3],
342 pub f64_1: [f64; 3],
343 pub handle_1: [fidl::Handle; 3],
344}
345
346impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays {}
347
348#[derive(Debug, PartialEq, PartialOrd)]
349pub struct Arrays2d {
350 pub b: [[bool; 2]; 3],
351 pub i8: [[i8; 2]; 3],
352 pub i16: [[i16; 2]; 3],
353 pub i32: [[i32; 2]; 3],
354 pub i64: [[i64; 2]; 3],
355 pub u8: [[u8; 2]; 3],
356 pub u16: [[u16; 2]; 3],
357 pub u32: [[u32; 2]; 3],
358 pub u64: [[u64; 2]; 3],
359 pub f32: [[f32; 2]; 3],
360 pub f64: [[f64; 2]; 3],
361 pub handle_handle: [[fidl::Handle; 2]; 3],
362}
363
364impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays2d {}
365
366#[derive(Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
367pub struct Handles {
368 pub handle_handle: fidl::Handle,
369 pub process_handle: fidl::Process,
370 pub thread_handle: fidl::Thread,
371 pub vmo_handle: fidl::Vmo,
372 pub event_handle: fidl::Event,
373 pub port_handle: fidl::Port,
374 pub socket_handle: fidl::Socket,
375 pub eventpair_handle: fidl::EventPair,
376 pub job_handle: fidl::Job,
377 pub vmar_handle: fidl::Vmar,
378 pub fifo_handle: fidl::Fifo,
379 pub timer_handle: fidl::Timer,
380 pub nullable_handle_handle: Option<fidl::Handle>,
381 pub nullable_process_handle: Option<fidl::Process>,
382 pub nullable_thread_handle: Option<fidl::Thread>,
383 pub nullable_vmo_handle: Option<fidl::Vmo>,
384 pub nullable_channel_handle: Option<fidl::Channel>,
385 pub nullable_event_handle: Option<fidl::Event>,
386 pub nullable_port_handle: Option<fidl::Port>,
387 pub nullable_interrupt_handle: Option<fidl::Interrupt>,
388 pub nullable_log_handle: Option<fidl::DebugLog>,
389 pub nullable_socket_handle: Option<fidl::Socket>,
390 pub nullable_eventpair_handle: Option<fidl::EventPair>,
391 pub nullable_job_handle: Option<fidl::Job>,
392 pub nullable_vmar_handle: Option<fidl::Vmar>,
393 pub nullable_fifo_handle: Option<fidl::Fifo>,
394 pub nullable_timer_handle: Option<fidl::Timer>,
395}
396
397impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for Handles {}
398
399#[derive(Debug, PartialEq, PartialOrd)]
400pub struct Vectors {
401 pub b_0: Vec<bool>,
402 pub i8_0: Vec<i8>,
403 pub i16_0: Vec<i16>,
404 pub i32_0: Vec<i32>,
405 pub i64_0: Vec<i64>,
406 pub u8_0: Vec<u8>,
407 pub u16_0: Vec<u16>,
408 pub u32_0: Vec<u32>,
409 pub u64_0: Vec<u64>,
410 pub f32_0: Vec<f32>,
411 pub f64_0: Vec<f64>,
412 pub handle_0: Vec<fidl::Handle>,
413 pub b_1: Vec<Vec<bool>>,
414 pub i8_1: Vec<Vec<i8>>,
415 pub i16_1: Vec<Vec<i16>>,
416 pub i32_1: Vec<Vec<i32>>,
417 pub i64_1: Vec<Vec<i64>>,
418 pub u8_1: Vec<Vec<u8>>,
419 pub u16_1: Vec<Vec<u16>>,
420 pub u32_1: Vec<Vec<u32>>,
421 pub u64_1: Vec<Vec<u64>>,
422 pub f32_1: Vec<Vec<f32>>,
423 pub f64_1: Vec<Vec<f64>>,
424 pub handle_1: Vec<Vec<fidl::Handle>>,
425 pub b_sized_0: Vec<bool>,
426 pub i8_sized_0: Vec<i8>,
427 pub i16_sized_0: Vec<i16>,
428 pub i32_sized_0: Vec<i32>,
429 pub i64_sized_0: Vec<i64>,
430 pub u8_sized_0: Vec<u8>,
431 pub u16_sized_0: Vec<u16>,
432 pub u32_sized_0: Vec<u32>,
433 pub u64_sized_0: Vec<u64>,
434 pub f32_sized_0: Vec<f32>,
435 pub f64_sized_0: Vec<f64>,
436 pub handle_sized_0: Vec<fidl::Handle>,
437 pub b_sized_1: Vec<bool>,
438 pub i8_sized_1: Vec<i8>,
439 pub i16_sized_1: Vec<i16>,
440 pub i32_sized_1: Vec<i32>,
441 pub i64_sized_1: Vec<i64>,
442 pub u8_sized_1: Vec<u8>,
443 pub u16_sized_1: Vec<u16>,
444 pub u32_sized_1: Vec<u32>,
445 pub u64_sized_1: Vec<u64>,
446 pub f32_sized_1: Vec<f32>,
447 pub f64_sized_1: Vec<f64>,
448 pub handle_sized_1: Vec<fidl::Handle>,
449 pub b_sized_2: Vec<Vec<bool>>,
450 pub i8_sized_2: Vec<Vec<i8>>,
451 pub i16_sized_2: Vec<Vec<i16>>,
452 pub i32_sized_2: Vec<Vec<i32>>,
453 pub i64_sized_2: Vec<Vec<i64>>,
454 pub u8_sized_2: Vec<Vec<u8>>,
455 pub u16_sized_2: Vec<Vec<u16>>,
456 pub u32_sized_2: Vec<Vec<u32>>,
457 pub u64_sized_2: Vec<Vec<u64>>,
458 pub f32_sized_2: Vec<Vec<f32>>,
459 pub f64_sized_2: Vec<Vec<f64>>,
460 pub handle_sized_2: Vec<Vec<fidl::Handle>>,
461 pub b_nullable_0: Option<Vec<bool>>,
462 pub i8_nullable_0: Option<Vec<i8>>,
463 pub i16_nullable_0: Option<Vec<i16>>,
464 pub i32_nullable_0: Option<Vec<i32>>,
465 pub i64_nullable_0: Option<Vec<i64>>,
466 pub u8_nullable_0: Option<Vec<u8>>,
467 pub u16_nullable_0: Option<Vec<u16>>,
468 pub u32_nullable_0: Option<Vec<u32>>,
469 pub u64_nullable_0: Option<Vec<u64>>,
470 pub f32_nullable_0: Option<Vec<f32>>,
471 pub f64_nullable_0: Option<Vec<f64>>,
472 pub handle_nullable_0: Option<Vec<fidl::Handle>>,
473 pub b_nullable_1: Option<Vec<Vec<bool>>>,
474 pub i8_nullable_1: Option<Vec<Vec<i8>>>,
475 pub i16_nullable_1: Option<Vec<Vec<i16>>>,
476 pub i32_nullable_1: Option<Vec<Vec<i32>>>,
477 pub i64_nullable_1: Option<Vec<Vec<i64>>>,
478 pub u8_nullable_1: Option<Vec<Vec<u8>>>,
479 pub u16_nullable_1: Option<Vec<Vec<u16>>>,
480 pub u32_nullable_1: Option<Vec<Vec<u32>>>,
481 pub u64_nullable_1: Option<Vec<Vec<u64>>>,
482 pub f32_nullable_1: Option<Vec<Vec<f32>>>,
483 pub f64_nullable_1: Option<Vec<Vec<f64>>>,
484 pub handle_nullable_1: Option<Vec<Vec<fidl::Handle>>>,
485 pub b_nullable_sized_0: Option<Vec<bool>>,
486 pub i8_nullable_sized_0: Option<Vec<i8>>,
487 pub i16_nullable_sized_0: Option<Vec<i16>>,
488 pub i32_nullable_sized_0: Option<Vec<i32>>,
489 pub i64_nullable_sized_0: Option<Vec<i64>>,
490 pub u8_nullable_sized_0: Option<Vec<u8>>,
491 pub u16_nullable_sized_0: Option<Vec<u16>>,
492 pub u32_nullable_sized_0: Option<Vec<u32>>,
493 pub u64_nullable_sized_0: Option<Vec<u64>>,
494 pub f32_nullable_sized_0: Option<Vec<f32>>,
495 pub f64_nullable_sized_0: Option<Vec<f64>>,
496 pub handle_nullable_sized_0: Option<Vec<fidl::Handle>>,
497 pub b_nullable_sized_1: Option<Vec<bool>>,
498 pub i8_nullable_sized_1: Option<Vec<i8>>,
499 pub i16_nullable_sized_1: Option<Vec<i16>>,
500 pub i32_nullable_sized_1: Option<Vec<i32>>,
501 pub i64_nullable_sized_1: Option<Vec<i64>>,
502 pub u8_nullable_sized_1: Option<Vec<u8>>,
503 pub u16_nullable_sized_1: Option<Vec<u16>>,
504 pub u32_nullable_sized_1: Option<Vec<u32>>,
505 pub u64_nullable_sized_1: Option<Vec<u64>>,
506 pub f32_nullable_sized_1: Option<Vec<f32>>,
507 pub f64_nullable_sized_1: Option<Vec<f64>>,
508 pub handle_nullable_sized_1: Option<Vec<fidl::Handle>>,
509 pub b_nullable_sized_2: Option<Vec<Vec<bool>>>,
510 pub i8_nullable_sized_2: Option<Vec<Vec<i8>>>,
511 pub i16_nullable_sized_2: Option<Vec<Vec<i16>>>,
512 pub i32_nullable_sized_2: Option<Vec<Vec<i32>>>,
513 pub i64_nullable_sized_2: Option<Vec<Vec<i64>>>,
514 pub u8_nullable_sized_2: Option<Vec<Vec<u8>>>,
515 pub u16_nullable_sized_2: Option<Vec<Vec<u16>>>,
516 pub u32_nullable_sized_2: Option<Vec<Vec<u32>>>,
517 pub u64_nullable_sized_2: Option<Vec<Vec<u64>>>,
518 pub f32_nullable_sized_2: Option<Vec<Vec<f32>>>,
519 pub f64_nullable_sized_2: Option<Vec<Vec<f64>>>,
520 pub handle_nullable_sized_2: Option<Vec<Vec<fidl::Handle>>>,
521}
522
523impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for Vectors {}
524
525#[derive(Debug, Default, PartialEq)]
526pub struct AllTypesTable {
527 pub bool_member: Option<bool>,
528 pub int8_member: Option<i8>,
529 pub int16_member: Option<i16>,
530 pub int32_member: Option<i32>,
531 pub int64_member: Option<i64>,
532 pub uint8_member: Option<u8>,
533 pub uint16_member: Option<u16>,
534 pub uint32_member: Option<u32>,
535 pub uint64_member: Option<u64>,
536 pub float32_member: Option<f32>,
537 pub float64_member: Option<f64>,
538 pub enum_member: Option<DefaultEnum>,
539 pub bits_member: Option<DefaultBits>,
540 pub handle_member: Option<fidl::Handle>,
541 pub string_member: Option<String>,
542 pub struct_member: Option<ThisIsAStruct>,
543 pub union_member: Option<ThisIsAUnion>,
544 pub array_member: Option<[u32; 3]>,
545 pub vector_member: Option<Vec<u32>>,
546 pub table_member: Option<ThisIsATable>,
547 pub xunion_member: Option<ThisIsAXunion>,
548 #[doc(hidden)]
549 pub __source_breaking: fidl::marker::SourceBreaking,
550}
551
552impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for AllTypesTable {}
553
554#[derive(Debug)]
555pub enum AllTypesXunion {
556 BoolMember(bool),
557 Int8Member(i8),
558 Int16Member(i16),
559 Int32Member(i32),
560 Int64Member(i64),
561 Uint8Member(u8),
562 Uint16Member(u16),
563 Uint32Member(u32),
564 Uint64Member(u64),
565 Float32Member(f32),
566 Float64Member(f64),
567 EnumMember(DefaultEnum),
568 BitsMember(DefaultBits),
569 HandleMember(fidl::Handle),
570 StringMember(String),
571 StructMember(ThisIsAStruct),
572 UnionMember(ThisIsAUnion),
573 ArrayMember([u32; 3]),
574 VectorMember(Vec<u32>),
575 TableMember(ThisIsATable),
576 XunionMember(ThisIsAXunion),
577 #[doc(hidden)]
578 __SourceBreaking {
579 unknown_ordinal: u64,
580 },
581}
582
583#[macro_export]
585macro_rules! AllTypesXunionUnknown {
586 () => {
587 _
588 };
589}
590
591impl PartialEq for AllTypesXunion {
593 fn eq(&self, other: &Self) -> bool {
594 match (self, other) {
595 (Self::BoolMember(x), Self::BoolMember(y)) => *x == *y,
596 (Self::Int8Member(x), Self::Int8Member(y)) => *x == *y,
597 (Self::Int16Member(x), Self::Int16Member(y)) => *x == *y,
598 (Self::Int32Member(x), Self::Int32Member(y)) => *x == *y,
599 (Self::Int64Member(x), Self::Int64Member(y)) => *x == *y,
600 (Self::Uint8Member(x), Self::Uint8Member(y)) => *x == *y,
601 (Self::Uint16Member(x), Self::Uint16Member(y)) => *x == *y,
602 (Self::Uint32Member(x), Self::Uint32Member(y)) => *x == *y,
603 (Self::Uint64Member(x), Self::Uint64Member(y)) => *x == *y,
604 (Self::Float32Member(x), Self::Float32Member(y)) => *x == *y,
605 (Self::Float64Member(x), Self::Float64Member(y)) => *x == *y,
606 (Self::EnumMember(x), Self::EnumMember(y)) => *x == *y,
607 (Self::BitsMember(x), Self::BitsMember(y)) => *x == *y,
608 (Self::HandleMember(x), Self::HandleMember(y)) => *x == *y,
609 (Self::StringMember(x), Self::StringMember(y)) => *x == *y,
610 (Self::StructMember(x), Self::StructMember(y)) => *x == *y,
611 (Self::UnionMember(x), Self::UnionMember(y)) => *x == *y,
612 (Self::ArrayMember(x), Self::ArrayMember(y)) => *x == *y,
613 (Self::VectorMember(x), Self::VectorMember(y)) => *x == *y,
614 (Self::TableMember(x), Self::TableMember(y)) => *x == *y,
615 (Self::XunionMember(x), Self::XunionMember(y)) => *x == *y,
616 _ => false,
617 }
618 }
619}
620
621impl AllTypesXunion {
622 #[inline]
623 pub fn ordinal(&self) -> u64 {
624 match *self {
625 Self::BoolMember(_) => 1,
626 Self::Int8Member(_) => 2,
627 Self::Int16Member(_) => 3,
628 Self::Int32Member(_) => 4,
629 Self::Int64Member(_) => 5,
630 Self::Uint8Member(_) => 6,
631 Self::Uint16Member(_) => 7,
632 Self::Uint32Member(_) => 8,
633 Self::Uint64Member(_) => 9,
634 Self::Float32Member(_) => 10,
635 Self::Float64Member(_) => 11,
636 Self::EnumMember(_) => 12,
637 Self::BitsMember(_) => 13,
638 Self::HandleMember(_) => 14,
639 Self::StringMember(_) => 15,
640 Self::StructMember(_) => 16,
641 Self::UnionMember(_) => 17,
642 Self::ArrayMember(_) => 18,
643 Self::VectorMember(_) => 19,
644 Self::TableMember(_) => 20,
645 Self::XunionMember(_) => 21,
646 Self::__SourceBreaking { unknown_ordinal } => unknown_ordinal,
647 }
648 }
649
650 #[inline]
651 pub fn unknown_variant_for_testing() -> Self {
652 Self::__SourceBreaking { unknown_ordinal: 0 }
653 }
654
655 #[inline]
656 pub fn is_unknown(&self) -> bool {
657 match self {
658 Self::__SourceBreaking { .. } => true,
659 _ => false,
660 }
661 }
662}
663
664impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for AllTypesXunion {}
665
666#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
667pub struct ConfigMarker;
668
669impl fidl::endpoints::ProtocolMarker for ConfigMarker {
670 type Proxy = ConfigProxy;
671 type RequestStream = ConfigRequestStream;
672 #[cfg(target_os = "fuchsia")]
673 type SynchronousProxy = ConfigSynchronousProxy;
674
675 const DEBUG_NAME: &'static str = "fidl.test.compatibility.Config";
676}
677impl fidl::endpoints::DiscoverableProtocolMarker for ConfigMarker {}
678
679pub trait ConfigProxyInterface: Send + Sync {
680 type GetImplsResponseFut: std::future::Future<Output = Result<Vec<String>, fidl::Error>> + Send;
681 fn r#get_impls(&self) -> Self::GetImplsResponseFut;
682}
683#[derive(Debug)]
684#[cfg(target_os = "fuchsia")]
685pub struct ConfigSynchronousProxy {
686 client: fidl::client::sync::Client,
687}
688
689#[cfg(target_os = "fuchsia")]
690impl fidl::endpoints::SynchronousProxy for ConfigSynchronousProxy {
691 type Proxy = ConfigProxy;
692 type Protocol = ConfigMarker;
693
694 fn from_channel(inner: fidl::Channel) -> Self {
695 Self::new(inner)
696 }
697
698 fn into_channel(self) -> fidl::Channel {
699 self.client.into_channel()
700 }
701
702 fn as_channel(&self) -> &fidl::Channel {
703 self.client.as_channel()
704 }
705}
706
707#[cfg(target_os = "fuchsia")]
708impl ConfigSynchronousProxy {
709 pub fn new(channel: fidl::Channel) -> Self {
710 let protocol_name = <ConfigMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
711 Self { client: fidl::client::sync::Client::new(channel, protocol_name) }
712 }
713
714 pub fn into_channel(self) -> fidl::Channel {
715 self.client.into_channel()
716 }
717
718 pub fn wait_for_event(
721 &self,
722 deadline: zx::MonotonicInstant,
723 ) -> Result<ConfigEvent, fidl::Error> {
724 ConfigEvent::decode(self.client.wait_for_event(deadline)?)
725 }
726
727 pub fn r#get_impls(
728 &self,
729 ___deadline: zx::MonotonicInstant,
730 ) -> Result<Vec<String>, fidl::Error> {
731 let _response =
732 self.client.send_query::<fidl::encoding::EmptyPayload, ConfigGetImplsResponse>(
733 (),
734 0x3b360c86a6dbdfe0,
735 fidl::encoding::DynamicFlags::empty(),
736 ___deadline,
737 )?;
738 Ok(_response.impls)
739 }
740}
741
742#[cfg(target_os = "fuchsia")]
743impl From<ConfigSynchronousProxy> for zx::Handle {
744 fn from(value: ConfigSynchronousProxy) -> Self {
745 value.into_channel().into()
746 }
747}
748
749#[cfg(target_os = "fuchsia")]
750impl From<fidl::Channel> for ConfigSynchronousProxy {
751 fn from(value: fidl::Channel) -> Self {
752 Self::new(value)
753 }
754}
755
756#[cfg(target_os = "fuchsia")]
757impl fidl::endpoints::FromClient for ConfigSynchronousProxy {
758 type Protocol = ConfigMarker;
759
760 fn from_client(value: fidl::endpoints::ClientEnd<ConfigMarker>) -> Self {
761 Self::new(value.into_channel())
762 }
763}
764
765#[derive(Debug, Clone)]
766pub struct ConfigProxy {
767 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
768}
769
770impl fidl::endpoints::Proxy for ConfigProxy {
771 type Protocol = ConfigMarker;
772
773 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
774 Self::new(inner)
775 }
776
777 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
778 self.client.into_channel().map_err(|client| Self { client })
779 }
780
781 fn as_channel(&self) -> &::fidl::AsyncChannel {
782 self.client.as_channel()
783 }
784}
785
786impl ConfigProxy {
787 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
789 let protocol_name = <ConfigMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
790 Self { client: fidl::client::Client::new(channel, protocol_name) }
791 }
792
793 pub fn take_event_stream(&self) -> ConfigEventStream {
799 ConfigEventStream { event_receiver: self.client.take_event_receiver() }
800 }
801
802 pub fn r#get_impls(
803 &self,
804 ) -> fidl::client::QueryResponseFut<Vec<String>, fidl::encoding::DefaultFuchsiaResourceDialect>
805 {
806 ConfigProxyInterface::r#get_impls(self)
807 }
808}
809
810impl ConfigProxyInterface for ConfigProxy {
811 type GetImplsResponseFut =
812 fidl::client::QueryResponseFut<Vec<String>, fidl::encoding::DefaultFuchsiaResourceDialect>;
813 fn r#get_impls(&self) -> Self::GetImplsResponseFut {
814 fn _decode(
815 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
816 ) -> Result<Vec<String>, fidl::Error> {
817 let _response = fidl::client::decode_transaction_body::<
818 ConfigGetImplsResponse,
819 fidl::encoding::DefaultFuchsiaResourceDialect,
820 0x3b360c86a6dbdfe0,
821 >(_buf?)?;
822 Ok(_response.impls)
823 }
824 self.client.send_query_and_decode::<fidl::encoding::EmptyPayload, Vec<String>>(
825 (),
826 0x3b360c86a6dbdfe0,
827 fidl::encoding::DynamicFlags::empty(),
828 _decode,
829 )
830 }
831}
832
833pub struct ConfigEventStream {
834 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
835}
836
837impl std::marker::Unpin for ConfigEventStream {}
838
839impl futures::stream::FusedStream for ConfigEventStream {
840 fn is_terminated(&self) -> bool {
841 self.event_receiver.is_terminated()
842 }
843}
844
845impl futures::Stream for ConfigEventStream {
846 type Item = Result<ConfigEvent, fidl::Error>;
847
848 fn poll_next(
849 mut self: std::pin::Pin<&mut Self>,
850 cx: &mut std::task::Context<'_>,
851 ) -> std::task::Poll<Option<Self::Item>> {
852 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
853 &mut self.event_receiver,
854 cx
855 )?) {
856 Some(buf) => std::task::Poll::Ready(Some(ConfigEvent::decode(buf))),
857 None => std::task::Poll::Ready(None),
858 }
859 }
860}
861
862#[derive(Debug)]
863pub enum ConfigEvent {}
864
865impl ConfigEvent {
866 fn decode(
868 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
869 ) -> Result<ConfigEvent, fidl::Error> {
870 let (bytes, _handles) = buf.split_mut();
871 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
872 debug_assert_eq!(tx_header.tx_id, 0);
873 match tx_header.ordinal {
874 _ => Err(fidl::Error::UnknownOrdinal {
875 ordinal: tx_header.ordinal,
876 protocol_name: <ConfigMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
877 }),
878 }
879 }
880}
881
882pub struct ConfigRequestStream {
884 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
885 is_terminated: bool,
886}
887
888impl std::marker::Unpin for ConfigRequestStream {}
889
890impl futures::stream::FusedStream for ConfigRequestStream {
891 fn is_terminated(&self) -> bool {
892 self.is_terminated
893 }
894}
895
896impl fidl::endpoints::RequestStream for ConfigRequestStream {
897 type Protocol = ConfigMarker;
898 type ControlHandle = ConfigControlHandle;
899
900 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
901 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
902 }
903
904 fn control_handle(&self) -> Self::ControlHandle {
905 ConfigControlHandle { inner: self.inner.clone() }
906 }
907
908 fn into_inner(
909 self,
910 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
911 {
912 (self.inner, self.is_terminated)
913 }
914
915 fn from_inner(
916 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
917 is_terminated: bool,
918 ) -> Self {
919 Self { inner, is_terminated }
920 }
921}
922
923impl futures::Stream for ConfigRequestStream {
924 type Item = Result<ConfigRequest, fidl::Error>;
925
926 fn poll_next(
927 mut self: std::pin::Pin<&mut Self>,
928 cx: &mut std::task::Context<'_>,
929 ) -> std::task::Poll<Option<Self::Item>> {
930 let this = &mut *self;
931 if this.inner.check_shutdown(cx) {
932 this.is_terminated = true;
933 return std::task::Poll::Ready(None);
934 }
935 if this.is_terminated {
936 panic!("polled ConfigRequestStream after completion");
937 }
938 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
939 |bytes, handles| {
940 match this.inner.channel().read_etc(cx, bytes, handles) {
941 std::task::Poll::Ready(Ok(())) => {}
942 std::task::Poll::Pending => return std::task::Poll::Pending,
943 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
944 this.is_terminated = true;
945 return std::task::Poll::Ready(None);
946 }
947 std::task::Poll::Ready(Err(e)) => {
948 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
949 e.into(),
950 ))))
951 }
952 }
953
954 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
956
957 std::task::Poll::Ready(Some(match header.ordinal {
958 0x3b360c86a6dbdfe0 => {
959 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
960 let mut req = fidl::new_empty!(
961 fidl::encoding::EmptyPayload,
962 fidl::encoding::DefaultFuchsiaResourceDialect
963 );
964 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&header, _body_bytes, handles, &mut req)?;
965 let control_handle = ConfigControlHandle { inner: this.inner.clone() };
966 Ok(ConfigRequest::GetImpls {
967 responder: ConfigGetImplsResponder {
968 control_handle: std::mem::ManuallyDrop::new(control_handle),
969 tx_id: header.tx_id,
970 },
971 })
972 }
973 _ => Err(fidl::Error::UnknownOrdinal {
974 ordinal: header.ordinal,
975 protocol_name:
976 <ConfigMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
977 }),
978 }))
979 },
980 )
981 }
982}
983
984#[derive(Debug)]
985pub enum ConfigRequest {
986 GetImpls { responder: ConfigGetImplsResponder },
987}
988
989impl ConfigRequest {
990 #[allow(irrefutable_let_patterns)]
991 pub fn into_get_impls(self) -> Option<(ConfigGetImplsResponder)> {
992 if let ConfigRequest::GetImpls { responder } = self {
993 Some((responder))
994 } else {
995 None
996 }
997 }
998
999 pub fn method_name(&self) -> &'static str {
1001 match *self {
1002 ConfigRequest::GetImpls { .. } => "get_impls",
1003 }
1004 }
1005}
1006
1007#[derive(Debug, Clone)]
1008pub struct ConfigControlHandle {
1009 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1010}
1011
1012impl fidl::endpoints::ControlHandle for ConfigControlHandle {
1013 fn shutdown(&self) {
1014 self.inner.shutdown()
1015 }
1016 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
1017 self.inner.shutdown_with_epitaph(status)
1018 }
1019
1020 fn is_closed(&self) -> bool {
1021 self.inner.channel().is_closed()
1022 }
1023 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
1024 self.inner.channel().on_closed()
1025 }
1026
1027 #[cfg(target_os = "fuchsia")]
1028 fn signal_peer(
1029 &self,
1030 clear_mask: zx::Signals,
1031 set_mask: zx::Signals,
1032 ) -> Result<(), zx_status::Status> {
1033 use fidl::Peered;
1034 self.inner.channel().signal_peer(clear_mask, set_mask)
1035 }
1036}
1037
1038impl ConfigControlHandle {}
1039
1040#[must_use = "FIDL methods require a response to be sent"]
1041#[derive(Debug)]
1042pub struct ConfigGetImplsResponder {
1043 control_handle: std::mem::ManuallyDrop<ConfigControlHandle>,
1044 tx_id: u32,
1045}
1046
1047impl std::ops::Drop for ConfigGetImplsResponder {
1051 fn drop(&mut self) {
1052 self.control_handle.shutdown();
1053 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
1055 }
1056}
1057
1058impl fidl::endpoints::Responder for ConfigGetImplsResponder {
1059 type ControlHandle = ConfigControlHandle;
1060
1061 fn control_handle(&self) -> &ConfigControlHandle {
1062 &self.control_handle
1063 }
1064
1065 fn drop_without_shutdown(mut self) {
1066 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
1068 std::mem::forget(self);
1070 }
1071}
1072
1073impl ConfigGetImplsResponder {
1074 pub fn send(self, mut impls: &[String]) -> Result<(), fidl::Error> {
1078 let _result = self.send_raw(impls);
1079 if _result.is_err() {
1080 self.control_handle.shutdown();
1081 }
1082 self.drop_without_shutdown();
1083 _result
1084 }
1085
1086 pub fn send_no_shutdown_on_err(self, mut impls: &[String]) -> Result<(), fidl::Error> {
1088 let _result = self.send_raw(impls);
1089 self.drop_without_shutdown();
1090 _result
1091 }
1092
1093 fn send_raw(&self, mut impls: &[String]) -> Result<(), fidl::Error> {
1094 self.control_handle.inner.send::<ConfigGetImplsResponse>(
1095 (impls,),
1096 self.tx_id,
1097 0x3b360c86a6dbdfe0,
1098 fidl::encoding::DynamicFlags::empty(),
1099 )
1100 }
1101}
1102
1103#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
1104pub struct EchoMarker;
1105
1106impl fidl::endpoints::ProtocolMarker for EchoMarker {
1107 type Proxy = EchoProxy;
1108 type RequestStream = EchoRequestStream;
1109 #[cfg(target_os = "fuchsia")]
1110 type SynchronousProxy = EchoSynchronousProxy;
1111
1112 const DEBUG_NAME: &'static str = "fidl.test.compatibility.Echo";
1113}
1114impl fidl::endpoints::DiscoverableProtocolMarker for EchoMarker {}
1115pub type EchoEchoMinimalWithErrorResult = Result<(), u32>;
1116pub type EchoEchoStructWithErrorResult = Result<Struct, DefaultEnum>;
1117pub type EchoEchoArraysWithErrorResult = Result<ArraysStruct, DefaultEnum>;
1118pub type EchoEchoVectorsWithErrorResult = Result<VectorsStruct, DefaultEnum>;
1119pub type EchoEchoTableWithErrorResult = Result<AllTypesTable, DefaultEnum>;
1120pub type EchoEchoXunionsWithErrorResult = Result<Vec<AllTypesXunion>, DefaultEnum>;
1121pub type EchoEchoNamedStructWithErrorResult = Result<fidl_fidl_test_imported::SimpleStruct, u32>;
1122pub type EchoEchoTablePayloadWithErrorResult = Result<ResponseTable, DefaultEnum>;
1123pub type EchoEchoUnionPayloadWithErrorResult = Result<ResponseUnion, DefaultEnum>;
1124
1125pub trait EchoProxyInterface: Send + Sync {
1126 type EchoTableRequestComposedResponseFut: std::future::Future<Output = Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error>>
1127 + Send;
1128 fn r#echo_table_request_composed(
1129 &self,
1130 payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1131 ) -> Self::EchoTableRequestComposedResponseFut;
1132 type EchoUnionResponseWithErrorComposedResponseFut: std::future::Future<
1133 Output = Result<
1134 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1135 fidl::Error,
1136 >,
1137 > + Send;
1138 fn r#echo_union_response_with_error_composed(
1139 &self,
1140 value: i64,
1141 want_absolute_value: bool,
1142 forward_to_server: &str,
1143 result_err: u32,
1144 result_variant: fidl_fidl_test_imported::WantResponse,
1145 ) -> Self::EchoUnionResponseWithErrorComposedResponseFut;
1146 type EchoMinimalResponseFut: std::future::Future<Output = Result<(), fidl::Error>> + Send;
1147 fn r#echo_minimal(&self, forward_to_server: &str) -> Self::EchoMinimalResponseFut;
1148 type EchoMinimalWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoMinimalWithErrorResult, fidl::Error>>
1149 + Send;
1150 fn r#echo_minimal_with_error(
1151 &self,
1152 forward_to_server: &str,
1153 result_variant: RespondWith,
1154 ) -> Self::EchoMinimalWithErrorResponseFut;
1155 fn r#echo_minimal_no_ret_val(&self, forward_to_server: &str) -> Result<(), fidl::Error>;
1156 type EchoStructResponseFut: std::future::Future<Output = Result<Struct, fidl::Error>> + Send;
1157 fn r#echo_struct(&self, value: Struct, forward_to_server: &str) -> Self::EchoStructResponseFut;
1158 type EchoStructWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoStructWithErrorResult, fidl::Error>>
1159 + Send;
1160 fn r#echo_struct_with_error(
1161 &self,
1162 value: Struct,
1163 result_err: DefaultEnum,
1164 forward_to_server: &str,
1165 result_variant: RespondWith,
1166 ) -> Self::EchoStructWithErrorResponseFut;
1167 fn r#echo_struct_no_ret_val(
1168 &self,
1169 value: Struct,
1170 forward_to_server: &str,
1171 ) -> Result<(), fidl::Error>;
1172 type EchoArraysResponseFut: std::future::Future<Output = Result<ArraysStruct, fidl::Error>>
1173 + Send;
1174 fn r#echo_arrays(
1175 &self,
1176 value: ArraysStruct,
1177 forward_to_server: &str,
1178 ) -> Self::EchoArraysResponseFut;
1179 type EchoArraysWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoArraysWithErrorResult, fidl::Error>>
1180 + Send;
1181 fn r#echo_arrays_with_error(
1182 &self,
1183 value: ArraysStruct,
1184 result_err: DefaultEnum,
1185 forward_to_server: &str,
1186 result_variant: RespondWith,
1187 ) -> Self::EchoArraysWithErrorResponseFut;
1188 type EchoVectorsResponseFut: std::future::Future<Output = Result<VectorsStruct, fidl::Error>>
1189 + Send;
1190 fn r#echo_vectors(
1191 &self,
1192 value: VectorsStruct,
1193 forward_to_server: &str,
1194 ) -> Self::EchoVectorsResponseFut;
1195 type EchoVectorsWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoVectorsWithErrorResult, fidl::Error>>
1196 + Send;
1197 fn r#echo_vectors_with_error(
1198 &self,
1199 value: VectorsStruct,
1200 result_err: DefaultEnum,
1201 forward_to_server: &str,
1202 result_variant: RespondWith,
1203 ) -> Self::EchoVectorsWithErrorResponseFut;
1204 type EchoTableResponseFut: std::future::Future<Output = Result<AllTypesTable, fidl::Error>>
1205 + Send;
1206 fn r#echo_table(
1207 &self,
1208 value: AllTypesTable,
1209 forward_to_server: &str,
1210 ) -> Self::EchoTableResponseFut;
1211 type EchoTableWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoTableWithErrorResult, fidl::Error>>
1212 + Send;
1213 fn r#echo_table_with_error(
1214 &self,
1215 value: AllTypesTable,
1216 result_err: DefaultEnum,
1217 forward_to_server: &str,
1218 result_variant: RespondWith,
1219 ) -> Self::EchoTableWithErrorResponseFut;
1220 type EchoXunionsResponseFut: std::future::Future<Output = Result<Vec<AllTypesXunion>, fidl::Error>>
1221 + Send;
1222 fn r#echo_xunions(
1223 &self,
1224 value: Vec<AllTypesXunion>,
1225 forward_to_server: &str,
1226 ) -> Self::EchoXunionsResponseFut;
1227 type EchoXunionsWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoXunionsWithErrorResult, fidl::Error>>
1228 + Send;
1229 fn r#echo_xunions_with_error(
1230 &self,
1231 value: Vec<AllTypesXunion>,
1232 result_err: DefaultEnum,
1233 forward_to_server: &str,
1234 result_variant: RespondWith,
1235 ) -> Self::EchoXunionsWithErrorResponseFut;
1236 type EchoNamedStructResponseFut: std::future::Future<Output = Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error>>
1237 + Send;
1238 fn r#echo_named_struct(
1239 &self,
1240 value: &fidl_fidl_test_imported::SimpleStruct,
1241 forward_to_server: &str,
1242 ) -> Self::EchoNamedStructResponseFut;
1243 type EchoNamedStructWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoNamedStructWithErrorResult, fidl::Error>>
1244 + Send;
1245 fn r#echo_named_struct_with_error(
1246 &self,
1247 value: &fidl_fidl_test_imported::SimpleStruct,
1248 result_err: u32,
1249 forward_to_server: &str,
1250 result_variant: fidl_fidl_test_imported::WantResponse,
1251 ) -> Self::EchoNamedStructWithErrorResponseFut;
1252 fn r#echo_named_struct_no_ret_val(
1253 &self,
1254 value: &fidl_fidl_test_imported::SimpleStruct,
1255 forward_to_server: &str,
1256 ) -> Result<(), fidl::Error>;
1257 type EchoTablePayloadResponseFut: std::future::Future<Output = Result<ResponseTable, fidl::Error>>
1258 + Send;
1259 fn r#echo_table_payload(&self, payload: &RequestTable) -> Self::EchoTablePayloadResponseFut;
1260 type EchoTablePayloadWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoTablePayloadWithErrorResult, fidl::Error>>
1261 + Send;
1262 fn r#echo_table_payload_with_error(
1263 &self,
1264 payload: &EchoEchoTablePayloadWithErrorRequest,
1265 ) -> Self::EchoTablePayloadWithErrorResponseFut;
1266 fn r#echo_table_payload_no_ret_val(&self, payload: &RequestTable) -> Result<(), fidl::Error>;
1267 type EchoUnionPayloadResponseFut: std::future::Future<Output = Result<ResponseUnion, fidl::Error>>
1268 + Send;
1269 fn r#echo_union_payload(&self, payload: &RequestUnion) -> Self::EchoUnionPayloadResponseFut;
1270 type EchoUnionPayloadWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error>>
1271 + Send;
1272 fn r#echo_union_payload_with_error(
1273 &self,
1274 payload: &EchoEchoUnionPayloadWithErrorRequest,
1275 ) -> Self::EchoUnionPayloadWithErrorResponseFut;
1276 fn r#echo_union_payload_no_ret_val(&self, payload: &RequestUnion) -> Result<(), fidl::Error>;
1277}
1278#[derive(Debug)]
1279#[cfg(target_os = "fuchsia")]
1280pub struct EchoSynchronousProxy {
1281 client: fidl::client::sync::Client,
1282}
1283
1284#[cfg(target_os = "fuchsia")]
1285impl fidl::endpoints::SynchronousProxy for EchoSynchronousProxy {
1286 type Proxy = EchoProxy;
1287 type Protocol = EchoMarker;
1288
1289 fn from_channel(inner: fidl::Channel) -> Self {
1290 Self::new(inner)
1291 }
1292
1293 fn into_channel(self) -> fidl::Channel {
1294 self.client.into_channel()
1295 }
1296
1297 fn as_channel(&self) -> &fidl::Channel {
1298 self.client.as_channel()
1299 }
1300}
1301
1302#[cfg(target_os = "fuchsia")]
1303impl EchoSynchronousProxy {
1304 pub fn new(channel: fidl::Channel) -> Self {
1305 let protocol_name = <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1306 Self { client: fidl::client::sync::Client::new(channel, protocol_name) }
1307 }
1308
1309 pub fn into_channel(self) -> fidl::Channel {
1310 self.client.into_channel()
1311 }
1312
1313 pub fn wait_for_event(&self, deadline: zx::MonotonicInstant) -> Result<EchoEvent, fidl::Error> {
1316 EchoEvent::decode(self.client.wait_for_event(deadline)?)
1317 }
1318
1319 pub fn r#echo_table_request_composed(
1320 &self,
1321 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1322 ___deadline: zx::MonotonicInstant,
1323 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
1324 let _response = self.client.send_query::<
1325 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1326 fidl_fidl_test_imported::ResponseStruct,
1327 >(
1328 payload,
1329 0x1d545c738c7a8ee,
1330 fidl::encoding::DynamicFlags::empty(),
1331 ___deadline,
1332 )?;
1333 Ok(_response.value)
1334 }
1335
1336 pub fn r#echo_union_response_with_error_composed(
1337 &self,
1338 mut value: i64,
1339 mut want_absolute_value: bool,
1340 mut forward_to_server: &str,
1341 mut result_err: u32,
1342 mut result_variant: fidl_fidl_test_imported::WantResponse,
1343 ___deadline: zx::MonotonicInstant,
1344 ) -> Result<
1345 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1346 fidl::Error,
1347 > {
1348 let _response = self.client.send_query::<
1349 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest,
1350 fidl::encoding::ResultType<fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse, u32>,
1351 >(
1352 (value, want_absolute_value, forward_to_server, result_err, result_variant,),
1353 0x38a67e88d6106443,
1354 fidl::encoding::DynamicFlags::empty(),
1355 ___deadline,
1356 )?;
1357 Ok(_response.map(|x| x))
1358 }
1359
1360 pub fn r#echo_minimal(
1361 &self,
1362 mut forward_to_server: &str,
1363 ___deadline: zx::MonotonicInstant,
1364 ) -> Result<(), fidl::Error> {
1365 let _response =
1366 self.client.send_query::<EchoEchoMinimalRequest, fidl::encoding::EmptyPayload>(
1367 (forward_to_server,),
1368 0x39edd68c837482ec,
1369 fidl::encoding::DynamicFlags::empty(),
1370 ___deadline,
1371 )?;
1372 Ok(_response)
1373 }
1374
1375 pub fn r#echo_minimal_with_error(
1376 &self,
1377 mut forward_to_server: &str,
1378 mut result_variant: RespondWith,
1379 ___deadline: zx::MonotonicInstant,
1380 ) -> Result<EchoEchoMinimalWithErrorResult, fidl::Error> {
1381 let _response = self.client.send_query::<
1382 EchoEchoMinimalWithErrorRequest,
1383 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>,
1384 >(
1385 (forward_to_server, result_variant,),
1386 0x36f4695996e35acc,
1387 fidl::encoding::DynamicFlags::empty(),
1388 ___deadline,
1389 )?;
1390 Ok(_response.map(|x| x))
1391 }
1392
1393 pub fn r#echo_minimal_no_ret_val(
1394 &self,
1395 mut forward_to_server: &str,
1396 ) -> Result<(), fidl::Error> {
1397 self.client.send::<EchoEchoMinimalNoRetValRequest>(
1398 (forward_to_server,),
1399 0x42693c143e2c3694,
1400 fidl::encoding::DynamicFlags::empty(),
1401 )
1402 }
1403
1404 pub fn r#echo_struct(
1405 &self,
1406 mut value: Struct,
1407 mut forward_to_server: &str,
1408 ___deadline: zx::MonotonicInstant,
1409 ) -> Result<Struct, fidl::Error> {
1410 let _response = self.client.send_query::<EchoEchoStructRequest, EchoEchoStructResponse>(
1411 (&mut value, forward_to_server),
1412 0x4c2f85818cc53f37,
1413 fidl::encoding::DynamicFlags::empty(),
1414 ___deadline,
1415 )?;
1416 Ok(_response.value)
1417 }
1418
1419 pub fn r#echo_struct_with_error(
1420 &self,
1421 mut value: Struct,
1422 mut result_err: DefaultEnum,
1423 mut forward_to_server: &str,
1424 mut result_variant: RespondWith,
1425 ___deadline: zx::MonotonicInstant,
1426 ) -> Result<EchoEchoStructWithErrorResult, fidl::Error> {
1427 let _response = self.client.send_query::<
1428 EchoEchoStructWithErrorRequest,
1429 fidl::encoding::ResultType<EchoEchoStructWithErrorResponse, DefaultEnum>,
1430 >(
1431 (&mut value, result_err, forward_to_server, result_variant,),
1432 0x46cb32652c4c0899,
1433 fidl::encoding::DynamicFlags::empty(),
1434 ___deadline,
1435 )?;
1436 Ok(_response.map(|x| x.value))
1437 }
1438
1439 pub fn r#echo_struct_no_ret_val(
1440 &self,
1441 mut value: Struct,
1442 mut forward_to_server: &str,
1443 ) -> Result<(), fidl::Error> {
1444 self.client.send::<EchoEchoStructNoRetValRequest>(
1445 (&mut value, forward_to_server),
1446 0x1f763e602cf5892a,
1447 fidl::encoding::DynamicFlags::empty(),
1448 )
1449 }
1450
1451 pub fn r#echo_arrays(
1452 &self,
1453 mut value: ArraysStruct,
1454 mut forward_to_server: &str,
1455 ___deadline: zx::MonotonicInstant,
1456 ) -> Result<ArraysStruct, fidl::Error> {
1457 let _response = self.client.send_query::<EchoEchoArraysRequest, EchoEchoArraysResponse>(
1458 (&mut value, forward_to_server),
1459 0x1b6019d5611f2470,
1460 fidl::encoding::DynamicFlags::empty(),
1461 ___deadline,
1462 )?;
1463 Ok(_response.value)
1464 }
1465
1466 pub fn r#echo_arrays_with_error(
1467 &self,
1468 mut value: ArraysStruct,
1469 mut result_err: DefaultEnum,
1470 mut forward_to_server: &str,
1471 mut result_variant: RespondWith,
1472 ___deadline: zx::MonotonicInstant,
1473 ) -> Result<EchoEchoArraysWithErrorResult, fidl::Error> {
1474 let _response = self.client.send_query::<
1475 EchoEchoArraysWithErrorRequest,
1476 fidl::encoding::ResultType<EchoEchoArraysWithErrorResponse, DefaultEnum>,
1477 >(
1478 (&mut value, result_err, forward_to_server, result_variant,),
1479 0x6dbf26e67e253afa,
1480 fidl::encoding::DynamicFlags::empty(),
1481 ___deadline,
1482 )?;
1483 Ok(_response.map(|x| x.value))
1484 }
1485
1486 pub fn r#echo_vectors(
1487 &self,
1488 mut value: VectorsStruct,
1489 mut forward_to_server: &str,
1490 ___deadline: zx::MonotonicInstant,
1491 ) -> Result<VectorsStruct, fidl::Error> {
1492 let _response = self.client.send_query::<EchoEchoVectorsRequest, EchoEchoVectorsResponse>(
1493 (&mut value, forward_to_server),
1494 0x1582623f0d9f6e5e,
1495 fidl::encoding::DynamicFlags::empty(),
1496 ___deadline,
1497 )?;
1498 Ok(_response.value)
1499 }
1500
1501 pub fn r#echo_vectors_with_error(
1502 &self,
1503 mut value: VectorsStruct,
1504 mut result_err: DefaultEnum,
1505 mut forward_to_server: &str,
1506 mut result_variant: RespondWith,
1507 ___deadline: zx::MonotonicInstant,
1508 ) -> Result<EchoEchoVectorsWithErrorResult, fidl::Error> {
1509 let _response = self.client.send_query::<
1510 EchoEchoVectorsWithErrorRequest,
1511 fidl::encoding::ResultType<EchoEchoVectorsWithErrorResponse, DefaultEnum>,
1512 >(
1513 (&mut value, result_err, forward_to_server, result_variant,),
1514 0x730f163401e2b3e5,
1515 fidl::encoding::DynamicFlags::empty(),
1516 ___deadline,
1517 )?;
1518 Ok(_response.map(|x| x.value))
1519 }
1520
1521 pub fn r#echo_table(
1522 &self,
1523 mut value: AllTypesTable,
1524 mut forward_to_server: &str,
1525 ___deadline: zx::MonotonicInstant,
1526 ) -> Result<AllTypesTable, fidl::Error> {
1527 let _response = self.client.send_query::<EchoEchoTableRequest, EchoEchoTableResponse>(
1528 (&mut value, forward_to_server),
1529 0x4f1fb0a512f47c4b,
1530 fidl::encoding::DynamicFlags::empty(),
1531 ___deadline,
1532 )?;
1533 Ok(_response.value)
1534 }
1535
1536 pub fn r#echo_table_with_error(
1537 &self,
1538 mut value: AllTypesTable,
1539 mut result_err: DefaultEnum,
1540 mut forward_to_server: &str,
1541 mut result_variant: RespondWith,
1542 ___deadline: zx::MonotonicInstant,
1543 ) -> Result<EchoEchoTableWithErrorResult, fidl::Error> {
1544 let _response = self.client.send_query::<
1545 EchoEchoTableWithErrorRequest,
1546 fidl::encoding::ResultType<EchoEchoTableWithErrorResponse, DefaultEnum>,
1547 >(
1548 (&mut value, result_err, forward_to_server, result_variant,),
1549 0x44e835cb1eb9a931,
1550 fidl::encoding::DynamicFlags::empty(),
1551 ___deadline,
1552 )?;
1553 Ok(_response.map(|x| x.value))
1554 }
1555
1556 pub fn r#echo_xunions(
1557 &self,
1558 mut value: Vec<AllTypesXunion>,
1559 mut forward_to_server: &str,
1560 ___deadline: zx::MonotonicInstant,
1561 ) -> Result<Vec<AllTypesXunion>, fidl::Error> {
1562 let _response = self.client.send_query::<EchoEchoXunionsRequest, EchoEchoXunionsResponse>(
1563 (value.as_mut(), forward_to_server),
1564 0x3dc181909041a583,
1565 fidl::encoding::DynamicFlags::empty(),
1566 ___deadline,
1567 )?;
1568 Ok(_response.value)
1569 }
1570
1571 pub fn r#echo_xunions_with_error(
1572 &self,
1573 mut value: Vec<AllTypesXunion>,
1574 mut result_err: DefaultEnum,
1575 mut forward_to_server: &str,
1576 mut result_variant: RespondWith,
1577 ___deadline: zx::MonotonicInstant,
1578 ) -> Result<EchoEchoXunionsWithErrorResult, fidl::Error> {
1579 let _response = self.client.send_query::<
1580 EchoEchoXunionsWithErrorRequest,
1581 fidl::encoding::ResultType<EchoEchoXunionsWithErrorResponse, DefaultEnum>,
1582 >(
1583 (value.as_mut(), result_err, forward_to_server, result_variant,),
1584 0x75184102667fa766,
1585 fidl::encoding::DynamicFlags::empty(),
1586 ___deadline,
1587 )?;
1588 Ok(_response.map(|x| x.value))
1589 }
1590
1591 pub fn r#echo_named_struct(
1592 &self,
1593 mut value: &fidl_fidl_test_imported::SimpleStruct,
1594 mut forward_to_server: &str,
1595 ___deadline: zx::MonotonicInstant,
1596 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
1597 let _response = self.client.send_query::<
1598 fidl_fidl_test_imported::RequestStruct,
1599 fidl_fidl_test_imported::ResponseStruct,
1600 >(
1601 (value, forward_to_server,),
1602 0xf2d4aa9e65f7111,
1603 fidl::encoding::DynamicFlags::empty(),
1604 ___deadline,
1605 )?;
1606 Ok(_response.value)
1607 }
1608
1609 pub fn r#echo_named_struct_with_error(
1610 &self,
1611 mut value: &fidl_fidl_test_imported::SimpleStruct,
1612 mut result_err: u32,
1613 mut forward_to_server: &str,
1614 mut result_variant: fidl_fidl_test_imported::WantResponse,
1615 ___deadline: zx::MonotonicInstant,
1616 ) -> Result<EchoEchoNamedStructWithErrorResult, fidl::Error> {
1617 let _response = self.client.send_query::<
1618 fidl_fidl_test_imported::ErrorableRequestStruct,
1619 fidl::encoding::ResultType<fidl_fidl_test_imported::ResponseStruct, u32>,
1620 >(
1621 (value, result_err, forward_to_server, result_variant,),
1622 0x5766fee9e74442e8,
1623 fidl::encoding::DynamicFlags::empty(),
1624 ___deadline,
1625 )?;
1626 Ok(_response.map(|x| x.value))
1627 }
1628
1629 pub fn r#echo_named_struct_no_ret_val(
1630 &self,
1631 mut value: &fidl_fidl_test_imported::SimpleStruct,
1632 mut forward_to_server: &str,
1633 ) -> Result<(), fidl::Error> {
1634 self.client.send::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(
1635 (value, forward_to_server),
1636 0x3a50bbf7d2113ad7,
1637 fidl::encoding::DynamicFlags::empty(),
1638 )
1639 }
1640
1641 pub fn r#echo_table_payload(
1642 &self,
1643 mut payload: &RequestTable,
1644 ___deadline: zx::MonotonicInstant,
1645 ) -> Result<ResponseTable, fidl::Error> {
1646 let _response = self.client.send_query::<RequestTable, ResponseTable>(
1647 payload,
1648 0x641d98087378c003,
1649 fidl::encoding::DynamicFlags::empty(),
1650 ___deadline,
1651 )?;
1652 Ok(_response)
1653 }
1654
1655 pub fn r#echo_table_payload_with_error(
1656 &self,
1657 mut payload: &EchoEchoTablePayloadWithErrorRequest,
1658 ___deadline: zx::MonotonicInstant,
1659 ) -> Result<EchoEchoTablePayloadWithErrorResult, fidl::Error> {
1660 let _response = self.client.send_query::<
1661 EchoEchoTablePayloadWithErrorRequest,
1662 fidl::encoding::ResultType<ResponseTable, DefaultEnum>,
1663 >(
1664 payload,
1665 0x636ed243761ab66d,
1666 fidl::encoding::DynamicFlags::empty(),
1667 ___deadline,
1668 )?;
1669 Ok(_response.map(|x| x))
1670 }
1671
1672 pub fn r#echo_table_payload_no_ret_val(
1673 &self,
1674 mut payload: &RequestTable,
1675 ) -> Result<(), fidl::Error> {
1676 self.client.send::<RequestTable>(
1677 payload,
1678 0x32961f7d718569f8,
1679 fidl::encoding::DynamicFlags::empty(),
1680 )
1681 }
1682
1683 pub fn r#echo_union_payload(
1684 &self,
1685 mut payload: &RequestUnion,
1686 ___deadline: zx::MonotonicInstant,
1687 ) -> Result<ResponseUnion, fidl::Error> {
1688 let _response = self.client.send_query::<RequestUnion, ResponseUnion>(
1689 payload,
1690 0x66def9e793f10c55,
1691 fidl::encoding::DynamicFlags::empty(),
1692 ___deadline,
1693 )?;
1694 Ok(_response)
1695 }
1696
1697 pub fn r#echo_union_payload_with_error(
1698 &self,
1699 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
1700 ___deadline: zx::MonotonicInstant,
1701 ) -> Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error> {
1702 let _response = self.client.send_query::<
1703 EchoEchoUnionPayloadWithErrorRequest,
1704 fidl::encoding::ResultType<ResponseUnion, DefaultEnum>,
1705 >(
1706 payload,
1707 0x1be890d6e68ef063,
1708 fidl::encoding::DynamicFlags::empty(),
1709 ___deadline,
1710 )?;
1711 Ok(_response.map(|x| x))
1712 }
1713
1714 pub fn r#echo_union_payload_no_ret_val(
1715 &self,
1716 mut payload: &RequestUnion,
1717 ) -> Result<(), fidl::Error> {
1718 self.client.send::<RequestUnion>(
1719 payload,
1720 0x11518bf346430040,
1721 fidl::encoding::DynamicFlags::empty(),
1722 )
1723 }
1724}
1725
1726#[cfg(target_os = "fuchsia")]
1727impl From<EchoSynchronousProxy> for zx::Handle {
1728 fn from(value: EchoSynchronousProxy) -> Self {
1729 value.into_channel().into()
1730 }
1731}
1732
1733#[cfg(target_os = "fuchsia")]
1734impl From<fidl::Channel> for EchoSynchronousProxy {
1735 fn from(value: fidl::Channel) -> Self {
1736 Self::new(value)
1737 }
1738}
1739
1740#[cfg(target_os = "fuchsia")]
1741impl fidl::endpoints::FromClient for EchoSynchronousProxy {
1742 type Protocol = EchoMarker;
1743
1744 fn from_client(value: fidl::endpoints::ClientEnd<EchoMarker>) -> Self {
1745 Self::new(value.into_channel())
1746 }
1747}
1748
1749#[derive(Debug, Clone)]
1750pub struct EchoProxy {
1751 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
1752}
1753
1754impl fidl::endpoints::Proxy for EchoProxy {
1755 type Protocol = EchoMarker;
1756
1757 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
1758 Self::new(inner)
1759 }
1760
1761 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
1762 self.client.into_channel().map_err(|client| Self { client })
1763 }
1764
1765 fn as_channel(&self) -> &::fidl::AsyncChannel {
1766 self.client.as_channel()
1767 }
1768}
1769
1770impl EchoProxy {
1771 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
1773 let protocol_name = <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1774 Self { client: fidl::client::Client::new(channel, protocol_name) }
1775 }
1776
1777 pub fn take_event_stream(&self) -> EchoEventStream {
1783 EchoEventStream { event_receiver: self.client.take_event_receiver() }
1784 }
1785
1786 pub fn r#echo_table_request_composed(
1787 &self,
1788 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1789 ) -> fidl::client::QueryResponseFut<
1790 fidl_fidl_test_imported::SimpleStruct,
1791 fidl::encoding::DefaultFuchsiaResourceDialect,
1792 > {
1793 EchoProxyInterface::r#echo_table_request_composed(self, payload)
1794 }
1795
1796 pub fn r#echo_union_response_with_error_composed(
1797 &self,
1798 mut value: i64,
1799 mut want_absolute_value: bool,
1800 mut forward_to_server: &str,
1801 mut result_err: u32,
1802 mut result_variant: fidl_fidl_test_imported::WantResponse,
1803 ) -> fidl::client::QueryResponseFut<
1804 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1805 fidl::encoding::DefaultFuchsiaResourceDialect,
1806 > {
1807 EchoProxyInterface::r#echo_union_response_with_error_composed(
1808 self,
1809 value,
1810 want_absolute_value,
1811 forward_to_server,
1812 result_err,
1813 result_variant,
1814 )
1815 }
1816
1817 pub fn r#echo_minimal(
1818 &self,
1819 mut forward_to_server: &str,
1820 ) -> fidl::client::QueryResponseFut<(), fidl::encoding::DefaultFuchsiaResourceDialect> {
1821 EchoProxyInterface::r#echo_minimal(self, forward_to_server)
1822 }
1823
1824 pub fn r#echo_minimal_with_error(
1825 &self,
1826 mut forward_to_server: &str,
1827 mut result_variant: RespondWith,
1828 ) -> fidl::client::QueryResponseFut<
1829 EchoEchoMinimalWithErrorResult,
1830 fidl::encoding::DefaultFuchsiaResourceDialect,
1831 > {
1832 EchoProxyInterface::r#echo_minimal_with_error(self, forward_to_server, result_variant)
1833 }
1834
1835 pub fn r#echo_minimal_no_ret_val(
1836 &self,
1837 mut forward_to_server: &str,
1838 ) -> Result<(), fidl::Error> {
1839 EchoProxyInterface::r#echo_minimal_no_ret_val(self, forward_to_server)
1840 }
1841
1842 pub fn r#echo_struct(
1843 &self,
1844 mut value: Struct,
1845 mut forward_to_server: &str,
1846 ) -> fidl::client::QueryResponseFut<Struct, fidl::encoding::DefaultFuchsiaResourceDialect> {
1847 EchoProxyInterface::r#echo_struct(self, value, forward_to_server)
1848 }
1849
1850 pub fn r#echo_struct_with_error(
1851 &self,
1852 mut value: Struct,
1853 mut result_err: DefaultEnum,
1854 mut forward_to_server: &str,
1855 mut result_variant: RespondWith,
1856 ) -> fidl::client::QueryResponseFut<
1857 EchoEchoStructWithErrorResult,
1858 fidl::encoding::DefaultFuchsiaResourceDialect,
1859 > {
1860 EchoProxyInterface::r#echo_struct_with_error(
1861 self,
1862 value,
1863 result_err,
1864 forward_to_server,
1865 result_variant,
1866 )
1867 }
1868
1869 pub fn r#echo_struct_no_ret_val(
1870 &self,
1871 mut value: Struct,
1872 mut forward_to_server: &str,
1873 ) -> Result<(), fidl::Error> {
1874 EchoProxyInterface::r#echo_struct_no_ret_val(self, value, forward_to_server)
1875 }
1876
1877 pub fn r#echo_arrays(
1878 &self,
1879 mut value: ArraysStruct,
1880 mut forward_to_server: &str,
1881 ) -> fidl::client::QueryResponseFut<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
1882 {
1883 EchoProxyInterface::r#echo_arrays(self, value, forward_to_server)
1884 }
1885
1886 pub fn r#echo_arrays_with_error(
1887 &self,
1888 mut value: ArraysStruct,
1889 mut result_err: DefaultEnum,
1890 mut forward_to_server: &str,
1891 mut result_variant: RespondWith,
1892 ) -> fidl::client::QueryResponseFut<
1893 EchoEchoArraysWithErrorResult,
1894 fidl::encoding::DefaultFuchsiaResourceDialect,
1895 > {
1896 EchoProxyInterface::r#echo_arrays_with_error(
1897 self,
1898 value,
1899 result_err,
1900 forward_to_server,
1901 result_variant,
1902 )
1903 }
1904
1905 pub fn r#echo_vectors(
1906 &self,
1907 mut value: VectorsStruct,
1908 mut forward_to_server: &str,
1909 ) -> fidl::client::QueryResponseFut<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
1910 {
1911 EchoProxyInterface::r#echo_vectors(self, value, forward_to_server)
1912 }
1913
1914 pub fn r#echo_vectors_with_error(
1915 &self,
1916 mut value: VectorsStruct,
1917 mut result_err: DefaultEnum,
1918 mut forward_to_server: &str,
1919 mut result_variant: RespondWith,
1920 ) -> fidl::client::QueryResponseFut<
1921 EchoEchoVectorsWithErrorResult,
1922 fidl::encoding::DefaultFuchsiaResourceDialect,
1923 > {
1924 EchoProxyInterface::r#echo_vectors_with_error(
1925 self,
1926 value,
1927 result_err,
1928 forward_to_server,
1929 result_variant,
1930 )
1931 }
1932
1933 pub fn r#echo_table(
1934 &self,
1935 mut value: AllTypesTable,
1936 mut forward_to_server: &str,
1937 ) -> fidl::client::QueryResponseFut<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>
1938 {
1939 EchoProxyInterface::r#echo_table(self, value, forward_to_server)
1940 }
1941
1942 pub fn r#echo_table_with_error(
1943 &self,
1944 mut value: AllTypesTable,
1945 mut result_err: DefaultEnum,
1946 mut forward_to_server: &str,
1947 mut result_variant: RespondWith,
1948 ) -> fidl::client::QueryResponseFut<
1949 EchoEchoTableWithErrorResult,
1950 fidl::encoding::DefaultFuchsiaResourceDialect,
1951 > {
1952 EchoProxyInterface::r#echo_table_with_error(
1953 self,
1954 value,
1955 result_err,
1956 forward_to_server,
1957 result_variant,
1958 )
1959 }
1960
1961 pub fn r#echo_xunions(
1962 &self,
1963 mut value: Vec<AllTypesXunion>,
1964 mut forward_to_server: &str,
1965 ) -> fidl::client::QueryResponseFut<
1966 Vec<AllTypesXunion>,
1967 fidl::encoding::DefaultFuchsiaResourceDialect,
1968 > {
1969 EchoProxyInterface::r#echo_xunions(self, value, forward_to_server)
1970 }
1971
1972 pub fn r#echo_xunions_with_error(
1973 &self,
1974 mut value: Vec<AllTypesXunion>,
1975 mut result_err: DefaultEnum,
1976 mut forward_to_server: &str,
1977 mut result_variant: RespondWith,
1978 ) -> fidl::client::QueryResponseFut<
1979 EchoEchoXunionsWithErrorResult,
1980 fidl::encoding::DefaultFuchsiaResourceDialect,
1981 > {
1982 EchoProxyInterface::r#echo_xunions_with_error(
1983 self,
1984 value,
1985 result_err,
1986 forward_to_server,
1987 result_variant,
1988 )
1989 }
1990
1991 pub fn r#echo_named_struct(
1992 &self,
1993 mut value: &fidl_fidl_test_imported::SimpleStruct,
1994 mut forward_to_server: &str,
1995 ) -> fidl::client::QueryResponseFut<
1996 fidl_fidl_test_imported::SimpleStruct,
1997 fidl::encoding::DefaultFuchsiaResourceDialect,
1998 > {
1999 EchoProxyInterface::r#echo_named_struct(self, value, forward_to_server)
2000 }
2001
2002 pub fn r#echo_named_struct_with_error(
2003 &self,
2004 mut value: &fidl_fidl_test_imported::SimpleStruct,
2005 mut result_err: u32,
2006 mut forward_to_server: &str,
2007 mut result_variant: fidl_fidl_test_imported::WantResponse,
2008 ) -> fidl::client::QueryResponseFut<
2009 EchoEchoNamedStructWithErrorResult,
2010 fidl::encoding::DefaultFuchsiaResourceDialect,
2011 > {
2012 EchoProxyInterface::r#echo_named_struct_with_error(
2013 self,
2014 value,
2015 result_err,
2016 forward_to_server,
2017 result_variant,
2018 )
2019 }
2020
2021 pub fn r#echo_named_struct_no_ret_val(
2022 &self,
2023 mut value: &fidl_fidl_test_imported::SimpleStruct,
2024 mut forward_to_server: &str,
2025 ) -> Result<(), fidl::Error> {
2026 EchoProxyInterface::r#echo_named_struct_no_ret_val(self, value, forward_to_server)
2027 }
2028
2029 pub fn r#echo_table_payload(
2030 &self,
2031 mut payload: &RequestTable,
2032 ) -> fidl::client::QueryResponseFut<ResponseTable, fidl::encoding::DefaultFuchsiaResourceDialect>
2033 {
2034 EchoProxyInterface::r#echo_table_payload(self, payload)
2035 }
2036
2037 pub fn r#echo_table_payload_with_error(
2038 &self,
2039 mut payload: &EchoEchoTablePayloadWithErrorRequest,
2040 ) -> fidl::client::QueryResponseFut<
2041 EchoEchoTablePayloadWithErrorResult,
2042 fidl::encoding::DefaultFuchsiaResourceDialect,
2043 > {
2044 EchoProxyInterface::r#echo_table_payload_with_error(self, payload)
2045 }
2046
2047 pub fn r#echo_table_payload_no_ret_val(
2048 &self,
2049 mut payload: &RequestTable,
2050 ) -> Result<(), fidl::Error> {
2051 EchoProxyInterface::r#echo_table_payload_no_ret_val(self, payload)
2052 }
2053
2054 pub fn r#echo_union_payload(
2055 &self,
2056 mut payload: &RequestUnion,
2057 ) -> fidl::client::QueryResponseFut<ResponseUnion, fidl::encoding::DefaultFuchsiaResourceDialect>
2058 {
2059 EchoProxyInterface::r#echo_union_payload(self, payload)
2060 }
2061
2062 pub fn r#echo_union_payload_with_error(
2063 &self,
2064 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
2065 ) -> fidl::client::QueryResponseFut<
2066 EchoEchoUnionPayloadWithErrorResult,
2067 fidl::encoding::DefaultFuchsiaResourceDialect,
2068 > {
2069 EchoProxyInterface::r#echo_union_payload_with_error(self, payload)
2070 }
2071
2072 pub fn r#echo_union_payload_no_ret_val(
2073 &self,
2074 mut payload: &RequestUnion,
2075 ) -> Result<(), fidl::Error> {
2076 EchoProxyInterface::r#echo_union_payload_no_ret_val(self, payload)
2077 }
2078}
2079
2080impl EchoProxyInterface for EchoProxy {
2081 type EchoTableRequestComposedResponseFut = fidl::client::QueryResponseFut<
2082 fidl_fidl_test_imported::SimpleStruct,
2083 fidl::encoding::DefaultFuchsiaResourceDialect,
2084 >;
2085 fn r#echo_table_request_composed(
2086 &self,
2087 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2088 ) -> Self::EchoTableRequestComposedResponseFut {
2089 fn _decode(
2090 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2091 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
2092 let _response = fidl::client::decode_transaction_body::<
2093 fidl_fidl_test_imported::ResponseStruct,
2094 fidl::encoding::DefaultFuchsiaResourceDialect,
2095 0x1d545c738c7a8ee,
2096 >(_buf?)?;
2097 Ok(_response.value)
2098 }
2099 self.client.send_query_and_decode::<
2100 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2101 fidl_fidl_test_imported::SimpleStruct,
2102 >(
2103 payload,
2104 0x1d545c738c7a8ee,
2105 fidl::encoding::DynamicFlags::empty(),
2106 _decode,
2107 )
2108 }
2109
2110 type EchoUnionResponseWithErrorComposedResponseFut = fidl::client::QueryResponseFut<
2111 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2112 fidl::encoding::DefaultFuchsiaResourceDialect,
2113 >;
2114 fn r#echo_union_response_with_error_composed(
2115 &self,
2116 mut value: i64,
2117 mut want_absolute_value: bool,
2118 mut forward_to_server: &str,
2119 mut result_err: u32,
2120 mut result_variant: fidl_fidl_test_imported::WantResponse,
2121 ) -> Self::EchoUnionResponseWithErrorComposedResponseFut {
2122 fn _decode(
2123 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2124 ) -> Result<
2125 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2126 fidl::Error,
2127 > {
2128 let _response = fidl::client::decode_transaction_body::<
2129 fidl::encoding::ResultType<
2130 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
2131 u32,
2132 >,
2133 fidl::encoding::DefaultFuchsiaResourceDialect,
2134 0x38a67e88d6106443,
2135 >(_buf?)?;
2136 Ok(_response.map(|x| x))
2137 }
2138 self.client.send_query_and_decode::<
2139 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest,
2140 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2141 >(
2142 (value, want_absolute_value, forward_to_server, result_err, result_variant,),
2143 0x38a67e88d6106443,
2144 fidl::encoding::DynamicFlags::empty(),
2145 _decode,
2146 )
2147 }
2148
2149 type EchoMinimalResponseFut =
2150 fidl::client::QueryResponseFut<(), fidl::encoding::DefaultFuchsiaResourceDialect>;
2151 fn r#echo_minimal(&self, mut forward_to_server: &str) -> Self::EchoMinimalResponseFut {
2152 fn _decode(
2153 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2154 ) -> Result<(), fidl::Error> {
2155 let _response = fidl::client::decode_transaction_body::<
2156 fidl::encoding::EmptyPayload,
2157 fidl::encoding::DefaultFuchsiaResourceDialect,
2158 0x39edd68c837482ec,
2159 >(_buf?)?;
2160 Ok(_response)
2161 }
2162 self.client.send_query_and_decode::<EchoEchoMinimalRequest, ()>(
2163 (forward_to_server,),
2164 0x39edd68c837482ec,
2165 fidl::encoding::DynamicFlags::empty(),
2166 _decode,
2167 )
2168 }
2169
2170 type EchoMinimalWithErrorResponseFut = fidl::client::QueryResponseFut<
2171 EchoEchoMinimalWithErrorResult,
2172 fidl::encoding::DefaultFuchsiaResourceDialect,
2173 >;
2174 fn r#echo_minimal_with_error(
2175 &self,
2176 mut forward_to_server: &str,
2177 mut result_variant: RespondWith,
2178 ) -> Self::EchoMinimalWithErrorResponseFut {
2179 fn _decode(
2180 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2181 ) -> Result<EchoEchoMinimalWithErrorResult, fidl::Error> {
2182 let _response = fidl::client::decode_transaction_body::<
2183 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>,
2184 fidl::encoding::DefaultFuchsiaResourceDialect,
2185 0x36f4695996e35acc,
2186 >(_buf?)?;
2187 Ok(_response.map(|x| x))
2188 }
2189 self.client.send_query_and_decode::<
2190 EchoEchoMinimalWithErrorRequest,
2191 EchoEchoMinimalWithErrorResult,
2192 >(
2193 (forward_to_server, result_variant,),
2194 0x36f4695996e35acc,
2195 fidl::encoding::DynamicFlags::empty(),
2196 _decode,
2197 )
2198 }
2199
2200 fn r#echo_minimal_no_ret_val(&self, mut forward_to_server: &str) -> Result<(), fidl::Error> {
2201 self.client.send::<EchoEchoMinimalNoRetValRequest>(
2202 (forward_to_server,),
2203 0x42693c143e2c3694,
2204 fidl::encoding::DynamicFlags::empty(),
2205 )
2206 }
2207
2208 type EchoStructResponseFut =
2209 fidl::client::QueryResponseFut<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>;
2210 fn r#echo_struct(
2211 &self,
2212 mut value: Struct,
2213 mut forward_to_server: &str,
2214 ) -> Self::EchoStructResponseFut {
2215 fn _decode(
2216 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2217 ) -> Result<Struct, fidl::Error> {
2218 let _response = fidl::client::decode_transaction_body::<
2219 EchoEchoStructResponse,
2220 fidl::encoding::DefaultFuchsiaResourceDialect,
2221 0x4c2f85818cc53f37,
2222 >(_buf?)?;
2223 Ok(_response.value)
2224 }
2225 self.client.send_query_and_decode::<EchoEchoStructRequest, Struct>(
2226 (&mut value, forward_to_server),
2227 0x4c2f85818cc53f37,
2228 fidl::encoding::DynamicFlags::empty(),
2229 _decode,
2230 )
2231 }
2232
2233 type EchoStructWithErrorResponseFut = fidl::client::QueryResponseFut<
2234 EchoEchoStructWithErrorResult,
2235 fidl::encoding::DefaultFuchsiaResourceDialect,
2236 >;
2237 fn r#echo_struct_with_error(
2238 &self,
2239 mut value: Struct,
2240 mut result_err: DefaultEnum,
2241 mut forward_to_server: &str,
2242 mut result_variant: RespondWith,
2243 ) -> Self::EchoStructWithErrorResponseFut {
2244 fn _decode(
2245 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2246 ) -> Result<EchoEchoStructWithErrorResult, fidl::Error> {
2247 let _response = fidl::client::decode_transaction_body::<
2248 fidl::encoding::ResultType<EchoEchoStructWithErrorResponse, DefaultEnum>,
2249 fidl::encoding::DefaultFuchsiaResourceDialect,
2250 0x46cb32652c4c0899,
2251 >(_buf?)?;
2252 Ok(_response.map(|x| x.value))
2253 }
2254 self.client
2255 .send_query_and_decode::<EchoEchoStructWithErrorRequest, EchoEchoStructWithErrorResult>(
2256 (&mut value, result_err, forward_to_server, result_variant),
2257 0x46cb32652c4c0899,
2258 fidl::encoding::DynamicFlags::empty(),
2259 _decode,
2260 )
2261 }
2262
2263 fn r#echo_struct_no_ret_val(
2264 &self,
2265 mut value: Struct,
2266 mut forward_to_server: &str,
2267 ) -> Result<(), fidl::Error> {
2268 self.client.send::<EchoEchoStructNoRetValRequest>(
2269 (&mut value, forward_to_server),
2270 0x1f763e602cf5892a,
2271 fidl::encoding::DynamicFlags::empty(),
2272 )
2273 }
2274
2275 type EchoArraysResponseFut =
2276 fidl::client::QueryResponseFut<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>;
2277 fn r#echo_arrays(
2278 &self,
2279 mut value: ArraysStruct,
2280 mut forward_to_server: &str,
2281 ) -> Self::EchoArraysResponseFut {
2282 fn _decode(
2283 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2284 ) -> Result<ArraysStruct, fidl::Error> {
2285 let _response = fidl::client::decode_transaction_body::<
2286 EchoEchoArraysResponse,
2287 fidl::encoding::DefaultFuchsiaResourceDialect,
2288 0x1b6019d5611f2470,
2289 >(_buf?)?;
2290 Ok(_response.value)
2291 }
2292 self.client.send_query_and_decode::<EchoEchoArraysRequest, ArraysStruct>(
2293 (&mut value, forward_to_server),
2294 0x1b6019d5611f2470,
2295 fidl::encoding::DynamicFlags::empty(),
2296 _decode,
2297 )
2298 }
2299
2300 type EchoArraysWithErrorResponseFut = fidl::client::QueryResponseFut<
2301 EchoEchoArraysWithErrorResult,
2302 fidl::encoding::DefaultFuchsiaResourceDialect,
2303 >;
2304 fn r#echo_arrays_with_error(
2305 &self,
2306 mut value: ArraysStruct,
2307 mut result_err: DefaultEnum,
2308 mut forward_to_server: &str,
2309 mut result_variant: RespondWith,
2310 ) -> Self::EchoArraysWithErrorResponseFut {
2311 fn _decode(
2312 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2313 ) -> Result<EchoEchoArraysWithErrorResult, fidl::Error> {
2314 let _response = fidl::client::decode_transaction_body::<
2315 fidl::encoding::ResultType<EchoEchoArraysWithErrorResponse, DefaultEnum>,
2316 fidl::encoding::DefaultFuchsiaResourceDialect,
2317 0x6dbf26e67e253afa,
2318 >(_buf?)?;
2319 Ok(_response.map(|x| x.value))
2320 }
2321 self.client
2322 .send_query_and_decode::<EchoEchoArraysWithErrorRequest, EchoEchoArraysWithErrorResult>(
2323 (&mut value, result_err, forward_to_server, result_variant),
2324 0x6dbf26e67e253afa,
2325 fidl::encoding::DynamicFlags::empty(),
2326 _decode,
2327 )
2328 }
2329
2330 type EchoVectorsResponseFut = fidl::client::QueryResponseFut<
2331 VectorsStruct,
2332 fidl::encoding::DefaultFuchsiaResourceDialect,
2333 >;
2334 fn r#echo_vectors(
2335 &self,
2336 mut value: VectorsStruct,
2337 mut forward_to_server: &str,
2338 ) -> Self::EchoVectorsResponseFut {
2339 fn _decode(
2340 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2341 ) -> Result<VectorsStruct, fidl::Error> {
2342 let _response = fidl::client::decode_transaction_body::<
2343 EchoEchoVectorsResponse,
2344 fidl::encoding::DefaultFuchsiaResourceDialect,
2345 0x1582623f0d9f6e5e,
2346 >(_buf?)?;
2347 Ok(_response.value)
2348 }
2349 self.client.send_query_and_decode::<EchoEchoVectorsRequest, VectorsStruct>(
2350 (&mut value, forward_to_server),
2351 0x1582623f0d9f6e5e,
2352 fidl::encoding::DynamicFlags::empty(),
2353 _decode,
2354 )
2355 }
2356
2357 type EchoVectorsWithErrorResponseFut = fidl::client::QueryResponseFut<
2358 EchoEchoVectorsWithErrorResult,
2359 fidl::encoding::DefaultFuchsiaResourceDialect,
2360 >;
2361 fn r#echo_vectors_with_error(
2362 &self,
2363 mut value: VectorsStruct,
2364 mut result_err: DefaultEnum,
2365 mut forward_to_server: &str,
2366 mut result_variant: RespondWith,
2367 ) -> Self::EchoVectorsWithErrorResponseFut {
2368 fn _decode(
2369 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2370 ) -> Result<EchoEchoVectorsWithErrorResult, fidl::Error> {
2371 let _response = fidl::client::decode_transaction_body::<
2372 fidl::encoding::ResultType<EchoEchoVectorsWithErrorResponse, DefaultEnum>,
2373 fidl::encoding::DefaultFuchsiaResourceDialect,
2374 0x730f163401e2b3e5,
2375 >(_buf?)?;
2376 Ok(_response.map(|x| x.value))
2377 }
2378 self.client.send_query_and_decode::<
2379 EchoEchoVectorsWithErrorRequest,
2380 EchoEchoVectorsWithErrorResult,
2381 >(
2382 (&mut value, result_err, forward_to_server, result_variant,),
2383 0x730f163401e2b3e5,
2384 fidl::encoding::DynamicFlags::empty(),
2385 _decode,
2386 )
2387 }
2388
2389 type EchoTableResponseFut = fidl::client::QueryResponseFut<
2390 AllTypesTable,
2391 fidl::encoding::DefaultFuchsiaResourceDialect,
2392 >;
2393 fn r#echo_table(
2394 &self,
2395 mut value: AllTypesTable,
2396 mut forward_to_server: &str,
2397 ) -> Self::EchoTableResponseFut {
2398 fn _decode(
2399 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2400 ) -> Result<AllTypesTable, fidl::Error> {
2401 let _response = fidl::client::decode_transaction_body::<
2402 EchoEchoTableResponse,
2403 fidl::encoding::DefaultFuchsiaResourceDialect,
2404 0x4f1fb0a512f47c4b,
2405 >(_buf?)?;
2406 Ok(_response.value)
2407 }
2408 self.client.send_query_and_decode::<EchoEchoTableRequest, AllTypesTable>(
2409 (&mut value, forward_to_server),
2410 0x4f1fb0a512f47c4b,
2411 fidl::encoding::DynamicFlags::empty(),
2412 _decode,
2413 )
2414 }
2415
2416 type EchoTableWithErrorResponseFut = fidl::client::QueryResponseFut<
2417 EchoEchoTableWithErrorResult,
2418 fidl::encoding::DefaultFuchsiaResourceDialect,
2419 >;
2420 fn r#echo_table_with_error(
2421 &self,
2422 mut value: AllTypesTable,
2423 mut result_err: DefaultEnum,
2424 mut forward_to_server: &str,
2425 mut result_variant: RespondWith,
2426 ) -> Self::EchoTableWithErrorResponseFut {
2427 fn _decode(
2428 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2429 ) -> Result<EchoEchoTableWithErrorResult, fidl::Error> {
2430 let _response = fidl::client::decode_transaction_body::<
2431 fidl::encoding::ResultType<EchoEchoTableWithErrorResponse, DefaultEnum>,
2432 fidl::encoding::DefaultFuchsiaResourceDialect,
2433 0x44e835cb1eb9a931,
2434 >(_buf?)?;
2435 Ok(_response.map(|x| x.value))
2436 }
2437 self.client
2438 .send_query_and_decode::<EchoEchoTableWithErrorRequest, EchoEchoTableWithErrorResult>(
2439 (&mut value, result_err, forward_to_server, result_variant),
2440 0x44e835cb1eb9a931,
2441 fidl::encoding::DynamicFlags::empty(),
2442 _decode,
2443 )
2444 }
2445
2446 type EchoXunionsResponseFut = fidl::client::QueryResponseFut<
2447 Vec<AllTypesXunion>,
2448 fidl::encoding::DefaultFuchsiaResourceDialect,
2449 >;
2450 fn r#echo_xunions(
2451 &self,
2452 mut value: Vec<AllTypesXunion>,
2453 mut forward_to_server: &str,
2454 ) -> Self::EchoXunionsResponseFut {
2455 fn _decode(
2456 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2457 ) -> Result<Vec<AllTypesXunion>, fidl::Error> {
2458 let _response = fidl::client::decode_transaction_body::<
2459 EchoEchoXunionsResponse,
2460 fidl::encoding::DefaultFuchsiaResourceDialect,
2461 0x3dc181909041a583,
2462 >(_buf?)?;
2463 Ok(_response.value)
2464 }
2465 self.client.send_query_and_decode::<EchoEchoXunionsRequest, Vec<AllTypesXunion>>(
2466 (value.as_mut(), forward_to_server),
2467 0x3dc181909041a583,
2468 fidl::encoding::DynamicFlags::empty(),
2469 _decode,
2470 )
2471 }
2472
2473 type EchoXunionsWithErrorResponseFut = fidl::client::QueryResponseFut<
2474 EchoEchoXunionsWithErrorResult,
2475 fidl::encoding::DefaultFuchsiaResourceDialect,
2476 >;
2477 fn r#echo_xunions_with_error(
2478 &self,
2479 mut value: Vec<AllTypesXunion>,
2480 mut result_err: DefaultEnum,
2481 mut forward_to_server: &str,
2482 mut result_variant: RespondWith,
2483 ) -> Self::EchoXunionsWithErrorResponseFut {
2484 fn _decode(
2485 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2486 ) -> Result<EchoEchoXunionsWithErrorResult, fidl::Error> {
2487 let _response = fidl::client::decode_transaction_body::<
2488 fidl::encoding::ResultType<EchoEchoXunionsWithErrorResponse, DefaultEnum>,
2489 fidl::encoding::DefaultFuchsiaResourceDialect,
2490 0x75184102667fa766,
2491 >(_buf?)?;
2492 Ok(_response.map(|x| x.value))
2493 }
2494 self.client.send_query_and_decode::<
2495 EchoEchoXunionsWithErrorRequest,
2496 EchoEchoXunionsWithErrorResult,
2497 >(
2498 (value.as_mut(), result_err, forward_to_server, result_variant,),
2499 0x75184102667fa766,
2500 fidl::encoding::DynamicFlags::empty(),
2501 _decode,
2502 )
2503 }
2504
2505 type EchoNamedStructResponseFut = fidl::client::QueryResponseFut<
2506 fidl_fidl_test_imported::SimpleStruct,
2507 fidl::encoding::DefaultFuchsiaResourceDialect,
2508 >;
2509 fn r#echo_named_struct(
2510 &self,
2511 mut value: &fidl_fidl_test_imported::SimpleStruct,
2512 mut forward_to_server: &str,
2513 ) -> Self::EchoNamedStructResponseFut {
2514 fn _decode(
2515 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2516 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
2517 let _response = fidl::client::decode_transaction_body::<
2518 fidl_fidl_test_imported::ResponseStruct,
2519 fidl::encoding::DefaultFuchsiaResourceDialect,
2520 0xf2d4aa9e65f7111,
2521 >(_buf?)?;
2522 Ok(_response.value)
2523 }
2524 self.client.send_query_and_decode::<
2525 fidl_fidl_test_imported::RequestStruct,
2526 fidl_fidl_test_imported::SimpleStruct,
2527 >(
2528 (value, forward_to_server,),
2529 0xf2d4aa9e65f7111,
2530 fidl::encoding::DynamicFlags::empty(),
2531 _decode,
2532 )
2533 }
2534
2535 type EchoNamedStructWithErrorResponseFut = fidl::client::QueryResponseFut<
2536 EchoEchoNamedStructWithErrorResult,
2537 fidl::encoding::DefaultFuchsiaResourceDialect,
2538 >;
2539 fn r#echo_named_struct_with_error(
2540 &self,
2541 mut value: &fidl_fidl_test_imported::SimpleStruct,
2542 mut result_err: u32,
2543 mut forward_to_server: &str,
2544 mut result_variant: fidl_fidl_test_imported::WantResponse,
2545 ) -> Self::EchoNamedStructWithErrorResponseFut {
2546 fn _decode(
2547 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2548 ) -> Result<EchoEchoNamedStructWithErrorResult, fidl::Error> {
2549 let _response = fidl::client::decode_transaction_body::<
2550 fidl::encoding::ResultType<fidl_fidl_test_imported::ResponseStruct, u32>,
2551 fidl::encoding::DefaultFuchsiaResourceDialect,
2552 0x5766fee9e74442e8,
2553 >(_buf?)?;
2554 Ok(_response.map(|x| x.value))
2555 }
2556 self.client.send_query_and_decode::<
2557 fidl_fidl_test_imported::ErrorableRequestStruct,
2558 EchoEchoNamedStructWithErrorResult,
2559 >(
2560 (value, result_err, forward_to_server, result_variant,),
2561 0x5766fee9e74442e8,
2562 fidl::encoding::DynamicFlags::empty(),
2563 _decode,
2564 )
2565 }
2566
2567 fn r#echo_named_struct_no_ret_val(
2568 &self,
2569 mut value: &fidl_fidl_test_imported::SimpleStruct,
2570 mut forward_to_server: &str,
2571 ) -> Result<(), fidl::Error> {
2572 self.client.send::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(
2573 (value, forward_to_server),
2574 0x3a50bbf7d2113ad7,
2575 fidl::encoding::DynamicFlags::empty(),
2576 )
2577 }
2578
2579 type EchoTablePayloadResponseFut = fidl::client::QueryResponseFut<
2580 ResponseTable,
2581 fidl::encoding::DefaultFuchsiaResourceDialect,
2582 >;
2583 fn r#echo_table_payload(
2584 &self,
2585 mut payload: &RequestTable,
2586 ) -> Self::EchoTablePayloadResponseFut {
2587 fn _decode(
2588 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2589 ) -> Result<ResponseTable, fidl::Error> {
2590 let _response = fidl::client::decode_transaction_body::<
2591 ResponseTable,
2592 fidl::encoding::DefaultFuchsiaResourceDialect,
2593 0x641d98087378c003,
2594 >(_buf?)?;
2595 Ok(_response)
2596 }
2597 self.client.send_query_and_decode::<RequestTable, ResponseTable>(
2598 payload,
2599 0x641d98087378c003,
2600 fidl::encoding::DynamicFlags::empty(),
2601 _decode,
2602 )
2603 }
2604
2605 type EchoTablePayloadWithErrorResponseFut = fidl::client::QueryResponseFut<
2606 EchoEchoTablePayloadWithErrorResult,
2607 fidl::encoding::DefaultFuchsiaResourceDialect,
2608 >;
2609 fn r#echo_table_payload_with_error(
2610 &self,
2611 mut payload: &EchoEchoTablePayloadWithErrorRequest,
2612 ) -> Self::EchoTablePayloadWithErrorResponseFut {
2613 fn _decode(
2614 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2615 ) -> Result<EchoEchoTablePayloadWithErrorResult, fidl::Error> {
2616 let _response = fidl::client::decode_transaction_body::<
2617 fidl::encoding::ResultType<ResponseTable, DefaultEnum>,
2618 fidl::encoding::DefaultFuchsiaResourceDialect,
2619 0x636ed243761ab66d,
2620 >(_buf?)?;
2621 Ok(_response.map(|x| x))
2622 }
2623 self.client.send_query_and_decode::<
2624 EchoEchoTablePayloadWithErrorRequest,
2625 EchoEchoTablePayloadWithErrorResult,
2626 >(
2627 payload,
2628 0x636ed243761ab66d,
2629 fidl::encoding::DynamicFlags::empty(),
2630 _decode,
2631 )
2632 }
2633
2634 fn r#echo_table_payload_no_ret_val(
2635 &self,
2636 mut payload: &RequestTable,
2637 ) -> Result<(), fidl::Error> {
2638 self.client.send::<RequestTable>(
2639 payload,
2640 0x32961f7d718569f8,
2641 fidl::encoding::DynamicFlags::empty(),
2642 )
2643 }
2644
2645 type EchoUnionPayloadResponseFut = fidl::client::QueryResponseFut<
2646 ResponseUnion,
2647 fidl::encoding::DefaultFuchsiaResourceDialect,
2648 >;
2649 fn r#echo_union_payload(
2650 &self,
2651 mut payload: &RequestUnion,
2652 ) -> Self::EchoUnionPayloadResponseFut {
2653 fn _decode(
2654 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2655 ) -> Result<ResponseUnion, fidl::Error> {
2656 let _response = fidl::client::decode_transaction_body::<
2657 ResponseUnion,
2658 fidl::encoding::DefaultFuchsiaResourceDialect,
2659 0x66def9e793f10c55,
2660 >(_buf?)?;
2661 Ok(_response)
2662 }
2663 self.client.send_query_and_decode::<RequestUnion, ResponseUnion>(
2664 payload,
2665 0x66def9e793f10c55,
2666 fidl::encoding::DynamicFlags::empty(),
2667 _decode,
2668 )
2669 }
2670
2671 type EchoUnionPayloadWithErrorResponseFut = fidl::client::QueryResponseFut<
2672 EchoEchoUnionPayloadWithErrorResult,
2673 fidl::encoding::DefaultFuchsiaResourceDialect,
2674 >;
2675 fn r#echo_union_payload_with_error(
2676 &self,
2677 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
2678 ) -> Self::EchoUnionPayloadWithErrorResponseFut {
2679 fn _decode(
2680 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2681 ) -> Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error> {
2682 let _response = fidl::client::decode_transaction_body::<
2683 fidl::encoding::ResultType<ResponseUnion, DefaultEnum>,
2684 fidl::encoding::DefaultFuchsiaResourceDialect,
2685 0x1be890d6e68ef063,
2686 >(_buf?)?;
2687 Ok(_response.map(|x| x))
2688 }
2689 self.client.send_query_and_decode::<
2690 EchoEchoUnionPayloadWithErrorRequest,
2691 EchoEchoUnionPayloadWithErrorResult,
2692 >(
2693 payload,
2694 0x1be890d6e68ef063,
2695 fidl::encoding::DynamicFlags::empty(),
2696 _decode,
2697 )
2698 }
2699
2700 fn r#echo_union_payload_no_ret_val(
2701 &self,
2702 mut payload: &RequestUnion,
2703 ) -> Result<(), fidl::Error> {
2704 self.client.send::<RequestUnion>(
2705 payload,
2706 0x11518bf346430040,
2707 fidl::encoding::DynamicFlags::empty(),
2708 )
2709 }
2710}
2711
2712pub struct EchoEventStream {
2713 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
2714}
2715
2716impl std::marker::Unpin for EchoEventStream {}
2717
2718impl futures::stream::FusedStream for EchoEventStream {
2719 fn is_terminated(&self) -> bool {
2720 self.event_receiver.is_terminated()
2721 }
2722}
2723
2724impl futures::Stream for EchoEventStream {
2725 type Item = Result<EchoEvent, fidl::Error>;
2726
2727 fn poll_next(
2728 mut self: std::pin::Pin<&mut Self>,
2729 cx: &mut std::task::Context<'_>,
2730 ) -> std::task::Poll<Option<Self::Item>> {
2731 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
2732 &mut self.event_receiver,
2733 cx
2734 )?) {
2735 Some(buf) => std::task::Poll::Ready(Some(EchoEvent::decode(buf))),
2736 None => std::task::Poll::Ready(None),
2737 }
2738 }
2739}
2740
2741#[derive(Debug)]
2742pub enum EchoEvent {
2743 EchoMinimalEvent {},
2744 EchoEvent { value: Struct },
2745 OnEchoNamedEvent { value: fidl_fidl_test_imported::SimpleStruct },
2746 OnEchoTablePayloadEvent { payload: ResponseTable },
2747 OnEchoUnionPayloadEvent { payload: ResponseUnion },
2748}
2749
2750impl EchoEvent {
2751 #[allow(irrefutable_let_patterns)]
2752 pub fn into_echo_minimal_event(self) -> Option<()> {
2753 if let EchoEvent::EchoMinimalEvent {} = self {
2754 Some(())
2755 } else {
2756 None
2757 }
2758 }
2759 #[allow(irrefutable_let_patterns)]
2760 pub fn into_echo_event(self) -> Option<Struct> {
2761 if let EchoEvent::EchoEvent { value } = self {
2762 Some((value))
2763 } else {
2764 None
2765 }
2766 }
2767 #[allow(irrefutable_let_patterns)]
2768 pub fn into_on_echo_named_event(self) -> Option<fidl_fidl_test_imported::SimpleStruct> {
2769 if let EchoEvent::OnEchoNamedEvent { value } = self {
2770 Some((value))
2771 } else {
2772 None
2773 }
2774 }
2775 #[allow(irrefutable_let_patterns)]
2776 pub fn into_on_echo_table_payload_event(self) -> Option<ResponseTable> {
2777 if let EchoEvent::OnEchoTablePayloadEvent { payload } = self {
2778 Some((payload))
2779 } else {
2780 None
2781 }
2782 }
2783 #[allow(irrefutable_let_patterns)]
2784 pub fn into_on_echo_union_payload_event(self) -> Option<ResponseUnion> {
2785 if let EchoEvent::OnEchoUnionPayloadEvent { payload } = self {
2786 Some((payload))
2787 } else {
2788 None
2789 }
2790 }
2791
2792 fn decode(
2794 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
2795 ) -> Result<EchoEvent, fidl::Error> {
2796 let (bytes, _handles) = buf.split_mut();
2797 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2798 debug_assert_eq!(tx_header.tx_id, 0);
2799 match tx_header.ordinal {
2800 0x273b2029f1a0aee2 => {
2801 let mut out = fidl::new_empty!(
2802 fidl::encoding::EmptyPayload,
2803 fidl::encoding::DefaultFuchsiaResourceDialect
2804 );
2805 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&tx_header, _body_bytes, _handles, &mut out)?;
2806 Ok((EchoEvent::EchoMinimalEvent {}))
2807 }
2808 0x1219e12e0450024 => {
2809 let mut out = fidl::new_empty!(
2810 EchoEchoEventRequest,
2811 fidl::encoding::DefaultFuchsiaResourceDialect
2812 );
2813 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoEventRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2814 Ok((EchoEvent::EchoEvent { value: out.value }))
2815 }
2816 0x749ebde83348a374 => {
2817 let mut out = fidl::new_empty!(
2818 fidl_fidl_test_imported::ResponseStruct,
2819 fidl::encoding::DefaultFuchsiaResourceDialect
2820 );
2821 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ResponseStruct>(&tx_header, _body_bytes, _handles, &mut out)?;
2822 Ok((EchoEvent::OnEchoNamedEvent { value: out.value }))
2823 }
2824 0x708dddea1cb98430 => {
2825 let mut out =
2826 fidl::new_empty!(ResponseTable, fidl::encoding::DefaultFuchsiaResourceDialect);
2827 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ResponseTable>(&tx_header, _body_bytes, _handles, &mut out)?;
2828 Ok((EchoEvent::OnEchoTablePayloadEvent { payload: out }))
2829 }
2830 0x642f4c265a05f4c0 => {
2831 let mut out =
2832 fidl::new_empty!(ResponseUnion, fidl::encoding::DefaultFuchsiaResourceDialect);
2833 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ResponseUnion>(&tx_header, _body_bytes, _handles, &mut out)?;
2834 Ok((EchoEvent::OnEchoUnionPayloadEvent { payload: out }))
2835 }
2836 _ => Err(fidl::Error::UnknownOrdinal {
2837 ordinal: tx_header.ordinal,
2838 protocol_name: <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2839 }),
2840 }
2841 }
2842}
2843
2844pub struct EchoRequestStream {
2846 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2847 is_terminated: bool,
2848}
2849
2850impl std::marker::Unpin for EchoRequestStream {}
2851
2852impl futures::stream::FusedStream for EchoRequestStream {
2853 fn is_terminated(&self) -> bool {
2854 self.is_terminated
2855 }
2856}
2857
2858impl fidl::endpoints::RequestStream for EchoRequestStream {
2859 type Protocol = EchoMarker;
2860 type ControlHandle = EchoControlHandle;
2861
2862 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
2863 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
2864 }
2865
2866 fn control_handle(&self) -> Self::ControlHandle {
2867 EchoControlHandle { inner: self.inner.clone() }
2868 }
2869
2870 fn into_inner(
2871 self,
2872 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
2873 {
2874 (self.inner, self.is_terminated)
2875 }
2876
2877 fn from_inner(
2878 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2879 is_terminated: bool,
2880 ) -> Self {
2881 Self { inner, is_terminated }
2882 }
2883}
2884
2885impl futures::Stream for EchoRequestStream {
2886 type Item = Result<EchoRequest, fidl::Error>;
2887
2888 fn poll_next(
2889 mut self: std::pin::Pin<&mut Self>,
2890 cx: &mut std::task::Context<'_>,
2891 ) -> std::task::Poll<Option<Self::Item>> {
2892 let this = &mut *self;
2893 if this.inner.check_shutdown(cx) {
2894 this.is_terminated = true;
2895 return std::task::Poll::Ready(None);
2896 }
2897 if this.is_terminated {
2898 panic!("polled EchoRequestStream after completion");
2899 }
2900 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
2901 |bytes, handles| {
2902 match this.inner.channel().read_etc(cx, bytes, handles) {
2903 std::task::Poll::Ready(Ok(())) => {}
2904 std::task::Poll::Pending => return std::task::Poll::Pending,
2905 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2906 this.is_terminated = true;
2907 return std::task::Poll::Ready(None);
2908 }
2909 std::task::Poll::Ready(Err(e)) => {
2910 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2911 e.into(),
2912 ))))
2913 }
2914 }
2915
2916 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2918
2919 std::task::Poll::Ready(Some(match header.ordinal {
2920 0x1d545c738c7a8ee => {
2921 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2922 let mut req = fidl::new_empty!(
2923 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2924 fidl::encoding::DefaultFuchsiaResourceDialect
2925 );
2926 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest>(&header, _body_bytes, handles, &mut req)?;
2927 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2928 Ok(EchoRequest::EchoTableRequestComposed {
2929 payload: req,
2930 responder: EchoEchoTableRequestComposedResponder {
2931 control_handle: std::mem::ManuallyDrop::new(control_handle),
2932 tx_id: header.tx_id,
2933 },
2934 })
2935 }
2936 0x38a67e88d6106443 => {
2937 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2938 let mut req = fidl::new_empty!(fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
2939 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest>(&header, _body_bytes, handles, &mut req)?;
2940 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2941 Ok(EchoRequest::EchoUnionResponseWithErrorComposed {
2942 value: req.value,
2943 want_absolute_value: req.want_absolute_value,
2944 forward_to_server: req.forward_to_server,
2945 result_err: req.result_err,
2946 result_variant: req.result_variant,
2947
2948 responder: EchoEchoUnionResponseWithErrorComposedResponder {
2949 control_handle: std::mem::ManuallyDrop::new(control_handle),
2950 tx_id: header.tx_id,
2951 },
2952 })
2953 }
2954 0x39edd68c837482ec => {
2955 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2956 let mut req = fidl::new_empty!(
2957 EchoEchoMinimalRequest,
2958 fidl::encoding::DefaultFuchsiaResourceDialect
2959 );
2960 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalRequest>(&header, _body_bytes, handles, &mut req)?;
2961 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2962 Ok(EchoRequest::EchoMinimal {
2963 forward_to_server: req.forward_to_server,
2964
2965 responder: EchoEchoMinimalResponder {
2966 control_handle: std::mem::ManuallyDrop::new(control_handle),
2967 tx_id: header.tx_id,
2968 },
2969 })
2970 }
2971 0x36f4695996e35acc => {
2972 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2973 let mut req = fidl::new_empty!(
2974 EchoEchoMinimalWithErrorRequest,
2975 fidl::encoding::DefaultFuchsiaResourceDialect
2976 );
2977 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
2978 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2979 Ok(EchoRequest::EchoMinimalWithError {
2980 forward_to_server: req.forward_to_server,
2981 result_variant: req.result_variant,
2982
2983 responder: EchoEchoMinimalWithErrorResponder {
2984 control_handle: std::mem::ManuallyDrop::new(control_handle),
2985 tx_id: header.tx_id,
2986 },
2987 })
2988 }
2989 0x42693c143e2c3694 => {
2990 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2991 let mut req = fidl::new_empty!(
2992 EchoEchoMinimalNoRetValRequest,
2993 fidl::encoding::DefaultFuchsiaResourceDialect
2994 );
2995 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalNoRetValRequest>(&header, _body_bytes, handles, &mut req)?;
2996 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2997 Ok(EchoRequest::EchoMinimalNoRetVal {
2998 forward_to_server: req.forward_to_server,
2999
3000 control_handle,
3001 })
3002 }
3003 0x4c2f85818cc53f37 => {
3004 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3005 let mut req = fidl::new_empty!(
3006 EchoEchoStructRequest,
3007 fidl::encoding::DefaultFuchsiaResourceDialect
3008 );
3009 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructRequest>(&header, _body_bytes, handles, &mut req)?;
3010 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3011 Ok(EchoRequest::EchoStruct {
3012 value: req.value,
3013 forward_to_server: req.forward_to_server,
3014
3015 responder: EchoEchoStructResponder {
3016 control_handle: std::mem::ManuallyDrop::new(control_handle),
3017 tx_id: header.tx_id,
3018 },
3019 })
3020 }
3021 0x46cb32652c4c0899 => {
3022 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3023 let mut req = fidl::new_empty!(
3024 EchoEchoStructWithErrorRequest,
3025 fidl::encoding::DefaultFuchsiaResourceDialect
3026 );
3027 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3028 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3029 Ok(EchoRequest::EchoStructWithError {
3030 value: req.value,
3031 result_err: req.result_err,
3032 forward_to_server: req.forward_to_server,
3033 result_variant: req.result_variant,
3034
3035 responder: EchoEchoStructWithErrorResponder {
3036 control_handle: std::mem::ManuallyDrop::new(control_handle),
3037 tx_id: header.tx_id,
3038 },
3039 })
3040 }
3041 0x1f763e602cf5892a => {
3042 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3043 let mut req = fidl::new_empty!(
3044 EchoEchoStructNoRetValRequest,
3045 fidl::encoding::DefaultFuchsiaResourceDialect
3046 );
3047 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructNoRetValRequest>(&header, _body_bytes, handles, &mut req)?;
3048 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3049 Ok(EchoRequest::EchoStructNoRetVal {
3050 value: req.value,
3051 forward_to_server: req.forward_to_server,
3052
3053 control_handle,
3054 })
3055 }
3056 0x1b6019d5611f2470 => {
3057 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3058 let mut req = fidl::new_empty!(
3059 EchoEchoArraysRequest,
3060 fidl::encoding::DefaultFuchsiaResourceDialect
3061 );
3062 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoArraysRequest>(&header, _body_bytes, handles, &mut req)?;
3063 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3064 Ok(EchoRequest::EchoArrays {
3065 value: req.value,
3066 forward_to_server: req.forward_to_server,
3067
3068 responder: EchoEchoArraysResponder {
3069 control_handle: std::mem::ManuallyDrop::new(control_handle),
3070 tx_id: header.tx_id,
3071 },
3072 })
3073 }
3074 0x6dbf26e67e253afa => {
3075 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3076 let mut req = fidl::new_empty!(
3077 EchoEchoArraysWithErrorRequest,
3078 fidl::encoding::DefaultFuchsiaResourceDialect
3079 );
3080 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoArraysWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3081 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3082 Ok(EchoRequest::EchoArraysWithError {
3083 value: req.value,
3084 result_err: req.result_err,
3085 forward_to_server: req.forward_to_server,
3086 result_variant: req.result_variant,
3087
3088 responder: EchoEchoArraysWithErrorResponder {
3089 control_handle: std::mem::ManuallyDrop::new(control_handle),
3090 tx_id: header.tx_id,
3091 },
3092 })
3093 }
3094 0x1582623f0d9f6e5e => {
3095 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3096 let mut req = fidl::new_empty!(
3097 EchoEchoVectorsRequest,
3098 fidl::encoding::DefaultFuchsiaResourceDialect
3099 );
3100 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoVectorsRequest>(&header, _body_bytes, handles, &mut req)?;
3101 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3102 Ok(EchoRequest::EchoVectors {
3103 value: req.value,
3104 forward_to_server: req.forward_to_server,
3105
3106 responder: EchoEchoVectorsResponder {
3107 control_handle: std::mem::ManuallyDrop::new(control_handle),
3108 tx_id: header.tx_id,
3109 },
3110 })
3111 }
3112 0x730f163401e2b3e5 => {
3113 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3114 let mut req = fidl::new_empty!(
3115 EchoEchoVectorsWithErrorRequest,
3116 fidl::encoding::DefaultFuchsiaResourceDialect
3117 );
3118 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoVectorsWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3119 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3120 Ok(EchoRequest::EchoVectorsWithError {
3121 value: req.value,
3122 result_err: req.result_err,
3123 forward_to_server: req.forward_to_server,
3124 result_variant: req.result_variant,
3125
3126 responder: EchoEchoVectorsWithErrorResponder {
3127 control_handle: std::mem::ManuallyDrop::new(control_handle),
3128 tx_id: header.tx_id,
3129 },
3130 })
3131 }
3132 0x4f1fb0a512f47c4b => {
3133 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3134 let mut req = fidl::new_empty!(
3135 EchoEchoTableRequest,
3136 fidl::encoding::DefaultFuchsiaResourceDialect
3137 );
3138 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTableRequest>(&header, _body_bytes, handles, &mut req)?;
3139 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3140 Ok(EchoRequest::EchoTable {
3141 value: req.value,
3142 forward_to_server: req.forward_to_server,
3143
3144 responder: EchoEchoTableResponder {
3145 control_handle: std::mem::ManuallyDrop::new(control_handle),
3146 tx_id: header.tx_id,
3147 },
3148 })
3149 }
3150 0x44e835cb1eb9a931 => {
3151 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3152 let mut req = fidl::new_empty!(
3153 EchoEchoTableWithErrorRequest,
3154 fidl::encoding::DefaultFuchsiaResourceDialect
3155 );
3156 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTableWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3157 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3158 Ok(EchoRequest::EchoTableWithError {
3159 value: req.value,
3160 result_err: req.result_err,
3161 forward_to_server: req.forward_to_server,
3162 result_variant: req.result_variant,
3163
3164 responder: EchoEchoTableWithErrorResponder {
3165 control_handle: std::mem::ManuallyDrop::new(control_handle),
3166 tx_id: header.tx_id,
3167 },
3168 })
3169 }
3170 0x3dc181909041a583 => {
3171 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3172 let mut req = fidl::new_empty!(
3173 EchoEchoXunionsRequest,
3174 fidl::encoding::DefaultFuchsiaResourceDialect
3175 );
3176 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoXunionsRequest>(&header, _body_bytes, handles, &mut req)?;
3177 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3178 Ok(EchoRequest::EchoXunions {
3179 value: req.value,
3180 forward_to_server: req.forward_to_server,
3181
3182 responder: EchoEchoXunionsResponder {
3183 control_handle: std::mem::ManuallyDrop::new(control_handle),
3184 tx_id: header.tx_id,
3185 },
3186 })
3187 }
3188 0x75184102667fa766 => {
3189 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3190 let mut req = fidl::new_empty!(
3191 EchoEchoXunionsWithErrorRequest,
3192 fidl::encoding::DefaultFuchsiaResourceDialect
3193 );
3194 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoXunionsWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3195 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3196 Ok(EchoRequest::EchoXunionsWithError {
3197 value: req.value,
3198 result_err: req.result_err,
3199 forward_to_server: req.forward_to_server,
3200 result_variant: req.result_variant,
3201
3202 responder: EchoEchoXunionsWithErrorResponder {
3203 control_handle: std::mem::ManuallyDrop::new(control_handle),
3204 tx_id: header.tx_id,
3205 },
3206 })
3207 }
3208 0xf2d4aa9e65f7111 => {
3209 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3210 let mut req = fidl::new_empty!(
3211 fidl_fidl_test_imported::RequestStruct,
3212 fidl::encoding::DefaultFuchsiaResourceDialect
3213 );
3214 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::RequestStruct>(&header, _body_bytes, handles, &mut req)?;
3215 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3216 Ok(EchoRequest::EchoNamedStruct {
3217 value: req.value,
3218 forward_to_server: req.forward_to_server,
3219
3220 responder: EchoEchoNamedStructResponder {
3221 control_handle: std::mem::ManuallyDrop::new(control_handle),
3222 tx_id: header.tx_id,
3223 },
3224 })
3225 }
3226 0x5766fee9e74442e8 => {
3227 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3228 let mut req = fidl::new_empty!(
3229 fidl_fidl_test_imported::ErrorableRequestStruct,
3230 fidl::encoding::DefaultFuchsiaResourceDialect
3231 );
3232 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ErrorableRequestStruct>(&header, _body_bytes, handles, &mut req)?;
3233 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3234 Ok(EchoRequest::EchoNamedStructWithError {
3235 value: req.value,
3236 result_err: req.result_err,
3237 forward_to_server: req.forward_to_server,
3238 result_variant: req.result_variant,
3239
3240 responder: EchoEchoNamedStructWithErrorResponder {
3241 control_handle: std::mem::ManuallyDrop::new(control_handle),
3242 tx_id: header.tx_id,
3243 },
3244 })
3245 }
3246 0x3a50bbf7d2113ad7 => {
3247 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3248 let mut req = fidl::new_empty!(
3249 fidl_fidl_test_imported::EventTriggeringRequestStruct,
3250 fidl::encoding::DefaultFuchsiaResourceDialect
3251 );
3252 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(&header, _body_bytes, handles, &mut req)?;
3253 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3254 Ok(EchoRequest::EchoNamedStructNoRetVal {
3255 value: req.value,
3256 forward_to_server: req.forward_to_server,
3257
3258 control_handle,
3259 })
3260 }
3261 0x641d98087378c003 => {
3262 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3263 let mut req = fidl::new_empty!(
3264 RequestTable,
3265 fidl::encoding::DefaultFuchsiaResourceDialect
3266 );
3267 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestTable>(&header, _body_bytes, handles, &mut req)?;
3268 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3269 Ok(EchoRequest::EchoTablePayload {
3270 payload: req,
3271 responder: EchoEchoTablePayloadResponder {
3272 control_handle: std::mem::ManuallyDrop::new(control_handle),
3273 tx_id: header.tx_id,
3274 },
3275 })
3276 }
3277 0x636ed243761ab66d => {
3278 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3279 let mut req = fidl::new_empty!(
3280 EchoEchoTablePayloadWithErrorRequest,
3281 fidl::encoding::DefaultFuchsiaResourceDialect
3282 );
3283 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTablePayloadWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3284 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3285 Ok(EchoRequest::EchoTablePayloadWithError {
3286 payload: req,
3287 responder: EchoEchoTablePayloadWithErrorResponder {
3288 control_handle: std::mem::ManuallyDrop::new(control_handle),
3289 tx_id: header.tx_id,
3290 },
3291 })
3292 }
3293 0x32961f7d718569f8 => {
3294 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3295 let mut req = fidl::new_empty!(
3296 RequestTable,
3297 fidl::encoding::DefaultFuchsiaResourceDialect
3298 );
3299 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestTable>(&header, _body_bytes, handles, &mut req)?;
3300 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3301 Ok(EchoRequest::EchoTablePayloadNoRetVal { payload: req, control_handle })
3302 }
3303 0x66def9e793f10c55 => {
3304 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3305 let mut req = fidl::new_empty!(
3306 RequestUnion,
3307 fidl::encoding::DefaultFuchsiaResourceDialect
3308 );
3309 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestUnion>(&header, _body_bytes, handles, &mut req)?;
3310 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3311 Ok(EchoRequest::EchoUnionPayload {
3312 payload: req,
3313 responder: EchoEchoUnionPayloadResponder {
3314 control_handle: std::mem::ManuallyDrop::new(control_handle),
3315 tx_id: header.tx_id,
3316 },
3317 })
3318 }
3319 0x1be890d6e68ef063 => {
3320 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3321 let mut req = fidl::new_empty!(
3322 EchoEchoUnionPayloadWithErrorRequest,
3323 fidl::encoding::DefaultFuchsiaResourceDialect
3324 );
3325 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoUnionPayloadWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3326 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3327 Ok(EchoRequest::EchoUnionPayloadWithError {
3328 payload: req,
3329 responder: EchoEchoUnionPayloadWithErrorResponder {
3330 control_handle: std::mem::ManuallyDrop::new(control_handle),
3331 tx_id: header.tx_id,
3332 },
3333 })
3334 }
3335 0x11518bf346430040 => {
3336 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3337 let mut req = fidl::new_empty!(
3338 RequestUnion,
3339 fidl::encoding::DefaultFuchsiaResourceDialect
3340 );
3341 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestUnion>(&header, _body_bytes, handles, &mut req)?;
3342 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3343 Ok(EchoRequest::EchoUnionPayloadNoRetVal { payload: req, control_handle })
3344 }
3345 _ => Err(fidl::Error::UnknownOrdinal {
3346 ordinal: header.ordinal,
3347 protocol_name: <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
3348 }),
3349 }))
3350 },
3351 )
3352 }
3353}
3354
3355#[derive(Debug)]
3356pub enum EchoRequest {
3357 EchoTableRequestComposed {
3358 payload: fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
3359 responder: EchoEchoTableRequestComposedResponder,
3360 },
3361 EchoUnionResponseWithErrorComposed {
3362 value: i64,
3363 want_absolute_value: bool,
3364 forward_to_server: String,
3365 result_err: u32,
3366 result_variant: fidl_fidl_test_imported::WantResponse,
3367 responder: EchoEchoUnionResponseWithErrorComposedResponder,
3368 },
3369 EchoMinimal {
3370 forward_to_server: String,
3371 responder: EchoEchoMinimalResponder,
3372 },
3373 EchoMinimalWithError {
3374 forward_to_server: String,
3375 result_variant: RespondWith,
3376 responder: EchoEchoMinimalWithErrorResponder,
3377 },
3378 EchoMinimalNoRetVal {
3379 forward_to_server: String,
3380 control_handle: EchoControlHandle,
3381 },
3382 EchoStruct {
3383 value: Struct,
3384 forward_to_server: String,
3385 responder: EchoEchoStructResponder,
3386 },
3387 EchoStructWithError {
3388 value: Struct,
3389 result_err: DefaultEnum,
3390 forward_to_server: String,
3391 result_variant: RespondWith,
3392 responder: EchoEchoStructWithErrorResponder,
3393 },
3394 EchoStructNoRetVal {
3395 value: Struct,
3396 forward_to_server: String,
3397 control_handle: EchoControlHandle,
3398 },
3399 EchoArrays {
3400 value: ArraysStruct,
3401 forward_to_server: String,
3402 responder: EchoEchoArraysResponder,
3403 },
3404 EchoArraysWithError {
3405 value: ArraysStruct,
3406 result_err: DefaultEnum,
3407 forward_to_server: String,
3408 result_variant: RespondWith,
3409 responder: EchoEchoArraysWithErrorResponder,
3410 },
3411 EchoVectors {
3412 value: VectorsStruct,
3413 forward_to_server: String,
3414 responder: EchoEchoVectorsResponder,
3415 },
3416 EchoVectorsWithError {
3417 value: VectorsStruct,
3418 result_err: DefaultEnum,
3419 forward_to_server: String,
3420 result_variant: RespondWith,
3421 responder: EchoEchoVectorsWithErrorResponder,
3422 },
3423 EchoTable {
3424 value: AllTypesTable,
3425 forward_to_server: String,
3426 responder: EchoEchoTableResponder,
3427 },
3428 EchoTableWithError {
3429 value: AllTypesTable,
3430 result_err: DefaultEnum,
3431 forward_to_server: String,
3432 result_variant: RespondWith,
3433 responder: EchoEchoTableWithErrorResponder,
3434 },
3435 EchoXunions {
3436 value: Vec<AllTypesXunion>,
3437 forward_to_server: String,
3438 responder: EchoEchoXunionsResponder,
3439 },
3440 EchoXunionsWithError {
3441 value: Vec<AllTypesXunion>,
3442 result_err: DefaultEnum,
3443 forward_to_server: String,
3444 result_variant: RespondWith,
3445 responder: EchoEchoXunionsWithErrorResponder,
3446 },
3447 EchoNamedStruct {
3448 value: fidl_fidl_test_imported::SimpleStruct,
3449 forward_to_server: String,
3450 responder: EchoEchoNamedStructResponder,
3451 },
3452 EchoNamedStructWithError {
3453 value: fidl_fidl_test_imported::SimpleStruct,
3454 result_err: u32,
3455 forward_to_server: String,
3456 result_variant: fidl_fidl_test_imported::WantResponse,
3457 responder: EchoEchoNamedStructWithErrorResponder,
3458 },
3459 EchoNamedStructNoRetVal {
3460 value: fidl_fidl_test_imported::SimpleStruct,
3461 forward_to_server: String,
3462 control_handle: EchoControlHandle,
3463 },
3464 EchoTablePayload {
3465 payload: RequestTable,
3466 responder: EchoEchoTablePayloadResponder,
3467 },
3468 EchoTablePayloadWithError {
3469 payload: EchoEchoTablePayloadWithErrorRequest,
3470 responder: EchoEchoTablePayloadWithErrorResponder,
3471 },
3472 EchoTablePayloadNoRetVal {
3473 payload: RequestTable,
3474 control_handle: EchoControlHandle,
3475 },
3476 EchoUnionPayload {
3477 payload: RequestUnion,
3478 responder: EchoEchoUnionPayloadResponder,
3479 },
3480 EchoUnionPayloadWithError {
3481 payload: EchoEchoUnionPayloadWithErrorRequest,
3482 responder: EchoEchoUnionPayloadWithErrorResponder,
3483 },
3484 EchoUnionPayloadNoRetVal {
3485 payload: RequestUnion,
3486 control_handle: EchoControlHandle,
3487 },
3488}
3489
3490impl EchoRequest {
3491 #[allow(irrefutable_let_patterns)]
3492 pub fn into_echo_table_request_composed(
3493 self,
3494 ) -> Option<(
3495 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
3496 EchoEchoTableRequestComposedResponder,
3497 )> {
3498 if let EchoRequest::EchoTableRequestComposed { payload, responder } = self {
3499 Some((payload, responder))
3500 } else {
3501 None
3502 }
3503 }
3504
3505 #[allow(irrefutable_let_patterns)]
3506 pub fn into_echo_union_response_with_error_composed(
3507 self,
3508 ) -> Option<(
3509 i64,
3510 bool,
3511 String,
3512 u32,
3513 fidl_fidl_test_imported::WantResponse,
3514 EchoEchoUnionResponseWithErrorComposedResponder,
3515 )> {
3516 if let EchoRequest::EchoUnionResponseWithErrorComposed {
3517 value,
3518 want_absolute_value,
3519 forward_to_server,
3520 result_err,
3521 result_variant,
3522 responder,
3523 } = self
3524 {
3525 Some((
3526 value,
3527 want_absolute_value,
3528 forward_to_server,
3529 result_err,
3530 result_variant,
3531 responder,
3532 ))
3533 } else {
3534 None
3535 }
3536 }
3537
3538 #[allow(irrefutable_let_patterns)]
3539 pub fn into_echo_minimal(self) -> Option<(String, EchoEchoMinimalResponder)> {
3540 if let EchoRequest::EchoMinimal { forward_to_server, responder } = self {
3541 Some((forward_to_server, responder))
3542 } else {
3543 None
3544 }
3545 }
3546
3547 #[allow(irrefutable_let_patterns)]
3548 pub fn into_echo_minimal_with_error(
3549 self,
3550 ) -> Option<(String, RespondWith, EchoEchoMinimalWithErrorResponder)> {
3551 if let EchoRequest::EchoMinimalWithError { forward_to_server, result_variant, responder } =
3552 self
3553 {
3554 Some((forward_to_server, result_variant, responder))
3555 } else {
3556 None
3557 }
3558 }
3559
3560 #[allow(irrefutable_let_patterns)]
3561 pub fn into_echo_minimal_no_ret_val(self) -> Option<(String, EchoControlHandle)> {
3562 if let EchoRequest::EchoMinimalNoRetVal { forward_to_server, control_handle } = self {
3563 Some((forward_to_server, control_handle))
3564 } else {
3565 None
3566 }
3567 }
3568
3569 #[allow(irrefutable_let_patterns)]
3570 pub fn into_echo_struct(self) -> Option<(Struct, String, EchoEchoStructResponder)> {
3571 if let EchoRequest::EchoStruct { value, forward_to_server, responder } = self {
3572 Some((value, forward_to_server, responder))
3573 } else {
3574 None
3575 }
3576 }
3577
3578 #[allow(irrefutable_let_patterns)]
3579 pub fn into_echo_struct_with_error(
3580 self,
3581 ) -> Option<(Struct, DefaultEnum, String, RespondWith, EchoEchoStructWithErrorResponder)> {
3582 if let EchoRequest::EchoStructWithError {
3583 value,
3584 result_err,
3585 forward_to_server,
3586 result_variant,
3587 responder,
3588 } = self
3589 {
3590 Some((value, result_err, forward_to_server, result_variant, responder))
3591 } else {
3592 None
3593 }
3594 }
3595
3596 #[allow(irrefutable_let_patterns)]
3597 pub fn into_echo_struct_no_ret_val(self) -> Option<(Struct, String, EchoControlHandle)> {
3598 if let EchoRequest::EchoStructNoRetVal { value, forward_to_server, control_handle } = self {
3599 Some((value, forward_to_server, control_handle))
3600 } else {
3601 None
3602 }
3603 }
3604
3605 #[allow(irrefutable_let_patterns)]
3606 pub fn into_echo_arrays(self) -> Option<(ArraysStruct, String, EchoEchoArraysResponder)> {
3607 if let EchoRequest::EchoArrays { value, forward_to_server, responder } = self {
3608 Some((value, forward_to_server, responder))
3609 } else {
3610 None
3611 }
3612 }
3613
3614 #[allow(irrefutable_let_patterns)]
3615 pub fn into_echo_arrays_with_error(
3616 self,
3617 ) -> Option<(ArraysStruct, DefaultEnum, String, RespondWith, EchoEchoArraysWithErrorResponder)>
3618 {
3619 if let EchoRequest::EchoArraysWithError {
3620 value,
3621 result_err,
3622 forward_to_server,
3623 result_variant,
3624 responder,
3625 } = self
3626 {
3627 Some((value, result_err, forward_to_server, result_variant, responder))
3628 } else {
3629 None
3630 }
3631 }
3632
3633 #[allow(irrefutable_let_patterns)]
3634 pub fn into_echo_vectors(self) -> Option<(VectorsStruct, String, EchoEchoVectorsResponder)> {
3635 if let EchoRequest::EchoVectors { value, forward_to_server, responder } = self {
3636 Some((value, forward_to_server, responder))
3637 } else {
3638 None
3639 }
3640 }
3641
3642 #[allow(irrefutable_let_patterns)]
3643 pub fn into_echo_vectors_with_error(
3644 self,
3645 ) -> Option<(VectorsStruct, DefaultEnum, String, RespondWith, EchoEchoVectorsWithErrorResponder)>
3646 {
3647 if let EchoRequest::EchoVectorsWithError {
3648 value,
3649 result_err,
3650 forward_to_server,
3651 result_variant,
3652 responder,
3653 } = self
3654 {
3655 Some((value, result_err, forward_to_server, result_variant, responder))
3656 } else {
3657 None
3658 }
3659 }
3660
3661 #[allow(irrefutable_let_patterns)]
3662 pub fn into_echo_table(self) -> Option<(AllTypesTable, String, EchoEchoTableResponder)> {
3663 if let EchoRequest::EchoTable { value, forward_to_server, responder } = self {
3664 Some((value, forward_to_server, responder))
3665 } else {
3666 None
3667 }
3668 }
3669
3670 #[allow(irrefutable_let_patterns)]
3671 pub fn into_echo_table_with_error(
3672 self,
3673 ) -> Option<(AllTypesTable, DefaultEnum, String, RespondWith, EchoEchoTableWithErrorResponder)>
3674 {
3675 if let EchoRequest::EchoTableWithError {
3676 value,
3677 result_err,
3678 forward_to_server,
3679 result_variant,
3680 responder,
3681 } = self
3682 {
3683 Some((value, result_err, forward_to_server, result_variant, responder))
3684 } else {
3685 None
3686 }
3687 }
3688
3689 #[allow(irrefutable_let_patterns)]
3690 pub fn into_echo_xunions(
3691 self,
3692 ) -> Option<(Vec<AllTypesXunion>, String, EchoEchoXunionsResponder)> {
3693 if let EchoRequest::EchoXunions { value, forward_to_server, responder } = self {
3694 Some((value, forward_to_server, responder))
3695 } else {
3696 None
3697 }
3698 }
3699
3700 #[allow(irrefutable_let_patterns)]
3701 pub fn into_echo_xunions_with_error(
3702 self,
3703 ) -> Option<(
3704 Vec<AllTypesXunion>,
3705 DefaultEnum,
3706 String,
3707 RespondWith,
3708 EchoEchoXunionsWithErrorResponder,
3709 )> {
3710 if let EchoRequest::EchoXunionsWithError {
3711 value,
3712 result_err,
3713 forward_to_server,
3714 result_variant,
3715 responder,
3716 } = self
3717 {
3718 Some((value, result_err, forward_to_server, result_variant, responder))
3719 } else {
3720 None
3721 }
3722 }
3723
3724 #[allow(irrefutable_let_patterns)]
3725 pub fn into_echo_named_struct(
3726 self,
3727 ) -> Option<(fidl_fidl_test_imported::SimpleStruct, String, EchoEchoNamedStructResponder)> {
3728 if let EchoRequest::EchoNamedStruct { value, forward_to_server, responder } = self {
3729 Some((value, forward_to_server, responder))
3730 } else {
3731 None
3732 }
3733 }
3734
3735 #[allow(irrefutable_let_patterns)]
3736 pub fn into_echo_named_struct_with_error(
3737 self,
3738 ) -> Option<(
3739 fidl_fidl_test_imported::SimpleStruct,
3740 u32,
3741 String,
3742 fidl_fidl_test_imported::WantResponse,
3743 EchoEchoNamedStructWithErrorResponder,
3744 )> {
3745 if let EchoRequest::EchoNamedStructWithError {
3746 value,
3747 result_err,
3748 forward_to_server,
3749 result_variant,
3750 responder,
3751 } = self
3752 {
3753 Some((value, result_err, forward_to_server, result_variant, responder))
3754 } else {
3755 None
3756 }
3757 }
3758
3759 #[allow(irrefutable_let_patterns)]
3760 pub fn into_echo_named_struct_no_ret_val(
3761 self,
3762 ) -> Option<(fidl_fidl_test_imported::SimpleStruct, String, EchoControlHandle)> {
3763 if let EchoRequest::EchoNamedStructNoRetVal { value, forward_to_server, control_handle } =
3764 self
3765 {
3766 Some((value, forward_to_server, control_handle))
3767 } else {
3768 None
3769 }
3770 }
3771
3772 #[allow(irrefutable_let_patterns)]
3773 pub fn into_echo_table_payload(self) -> Option<(RequestTable, EchoEchoTablePayloadResponder)> {
3774 if let EchoRequest::EchoTablePayload { payload, responder } = self {
3775 Some((payload, responder))
3776 } else {
3777 None
3778 }
3779 }
3780
3781 #[allow(irrefutable_let_patterns)]
3782 pub fn into_echo_table_payload_with_error(
3783 self,
3784 ) -> Option<(EchoEchoTablePayloadWithErrorRequest, EchoEchoTablePayloadWithErrorResponder)>
3785 {
3786 if let EchoRequest::EchoTablePayloadWithError { payload, responder } = self {
3787 Some((payload, responder))
3788 } else {
3789 None
3790 }
3791 }
3792
3793 #[allow(irrefutable_let_patterns)]
3794 pub fn into_echo_table_payload_no_ret_val(self) -> Option<(RequestTable, EchoControlHandle)> {
3795 if let EchoRequest::EchoTablePayloadNoRetVal { payload, control_handle } = self {
3796 Some((payload, control_handle))
3797 } else {
3798 None
3799 }
3800 }
3801
3802 #[allow(irrefutable_let_patterns)]
3803 pub fn into_echo_union_payload(self) -> Option<(RequestUnion, EchoEchoUnionPayloadResponder)> {
3804 if let EchoRequest::EchoUnionPayload { payload, responder } = self {
3805 Some((payload, responder))
3806 } else {
3807 None
3808 }
3809 }
3810
3811 #[allow(irrefutable_let_patterns)]
3812 pub fn into_echo_union_payload_with_error(
3813 self,
3814 ) -> Option<(EchoEchoUnionPayloadWithErrorRequest, EchoEchoUnionPayloadWithErrorResponder)>
3815 {
3816 if let EchoRequest::EchoUnionPayloadWithError { payload, responder } = self {
3817 Some((payload, responder))
3818 } else {
3819 None
3820 }
3821 }
3822
3823 #[allow(irrefutable_let_patterns)]
3824 pub fn into_echo_union_payload_no_ret_val(self) -> Option<(RequestUnion, EchoControlHandle)> {
3825 if let EchoRequest::EchoUnionPayloadNoRetVal { payload, control_handle } = self {
3826 Some((payload, control_handle))
3827 } else {
3828 None
3829 }
3830 }
3831
3832 pub fn method_name(&self) -> &'static str {
3834 match *self {
3835 EchoRequest::EchoTableRequestComposed { .. } => "echo_table_request_composed",
3836 EchoRequest::EchoUnionResponseWithErrorComposed { .. } => {
3837 "echo_union_response_with_error_composed"
3838 }
3839 EchoRequest::EchoMinimal { .. } => "echo_minimal",
3840 EchoRequest::EchoMinimalWithError { .. } => "echo_minimal_with_error",
3841 EchoRequest::EchoMinimalNoRetVal { .. } => "echo_minimal_no_ret_val",
3842 EchoRequest::EchoStruct { .. } => "echo_struct",
3843 EchoRequest::EchoStructWithError { .. } => "echo_struct_with_error",
3844 EchoRequest::EchoStructNoRetVal { .. } => "echo_struct_no_ret_val",
3845 EchoRequest::EchoArrays { .. } => "echo_arrays",
3846 EchoRequest::EchoArraysWithError { .. } => "echo_arrays_with_error",
3847 EchoRequest::EchoVectors { .. } => "echo_vectors",
3848 EchoRequest::EchoVectorsWithError { .. } => "echo_vectors_with_error",
3849 EchoRequest::EchoTable { .. } => "echo_table",
3850 EchoRequest::EchoTableWithError { .. } => "echo_table_with_error",
3851 EchoRequest::EchoXunions { .. } => "echo_xunions",
3852 EchoRequest::EchoXunionsWithError { .. } => "echo_xunions_with_error",
3853 EchoRequest::EchoNamedStruct { .. } => "echo_named_struct",
3854 EchoRequest::EchoNamedStructWithError { .. } => "echo_named_struct_with_error",
3855 EchoRequest::EchoNamedStructNoRetVal { .. } => "echo_named_struct_no_ret_val",
3856 EchoRequest::EchoTablePayload { .. } => "echo_table_payload",
3857 EchoRequest::EchoTablePayloadWithError { .. } => "echo_table_payload_with_error",
3858 EchoRequest::EchoTablePayloadNoRetVal { .. } => "echo_table_payload_no_ret_val",
3859 EchoRequest::EchoUnionPayload { .. } => "echo_union_payload",
3860 EchoRequest::EchoUnionPayloadWithError { .. } => "echo_union_payload_with_error",
3861 EchoRequest::EchoUnionPayloadNoRetVal { .. } => "echo_union_payload_no_ret_val",
3862 }
3863 }
3864}
3865
3866#[derive(Debug, Clone)]
3867pub struct EchoControlHandle {
3868 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
3869}
3870
3871impl fidl::endpoints::ControlHandle for EchoControlHandle {
3872 fn shutdown(&self) {
3873 self.inner.shutdown()
3874 }
3875 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
3876 self.inner.shutdown_with_epitaph(status)
3877 }
3878
3879 fn is_closed(&self) -> bool {
3880 self.inner.channel().is_closed()
3881 }
3882 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
3883 self.inner.channel().on_closed()
3884 }
3885
3886 #[cfg(target_os = "fuchsia")]
3887 fn signal_peer(
3888 &self,
3889 clear_mask: zx::Signals,
3890 set_mask: zx::Signals,
3891 ) -> Result<(), zx_status::Status> {
3892 use fidl::Peered;
3893 self.inner.channel().signal_peer(clear_mask, set_mask)
3894 }
3895}
3896
3897impl EchoControlHandle {
3898 pub fn send_echo_minimal_event(&self) -> Result<(), fidl::Error> {
3899 self.inner.send::<fidl::encoding::EmptyPayload>(
3900 (),
3901 0,
3902 0x273b2029f1a0aee2,
3903 fidl::encoding::DynamicFlags::empty(),
3904 )
3905 }
3906
3907 pub fn send_echo_event(&self, mut value: Struct) -> Result<(), fidl::Error> {
3908 self.inner.send::<EchoEchoEventRequest>(
3909 (&mut value,),
3910 0,
3911 0x1219e12e0450024,
3912 fidl::encoding::DynamicFlags::empty(),
3913 )
3914 }
3915
3916 pub fn send_on_echo_named_event(
3917 &self,
3918 mut value: &fidl_fidl_test_imported::SimpleStruct,
3919 ) -> Result<(), fidl::Error> {
3920 self.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
3921 (value,),
3922 0,
3923 0x749ebde83348a374,
3924 fidl::encoding::DynamicFlags::empty(),
3925 )
3926 }
3927
3928 pub fn send_on_echo_table_payload_event(
3929 &self,
3930 mut payload: &ResponseTable,
3931 ) -> Result<(), fidl::Error> {
3932 self.inner.send::<ResponseTable>(
3933 payload,
3934 0,
3935 0x708dddea1cb98430,
3936 fidl::encoding::DynamicFlags::empty(),
3937 )
3938 }
3939
3940 pub fn send_on_echo_union_payload_event(
3941 &self,
3942 mut payload: &ResponseUnion,
3943 ) -> Result<(), fidl::Error> {
3944 self.inner.send::<ResponseUnion>(
3945 payload,
3946 0,
3947 0x642f4c265a05f4c0,
3948 fidl::encoding::DynamicFlags::empty(),
3949 )
3950 }
3951}
3952
3953#[must_use = "FIDL methods require a response to be sent"]
3954#[derive(Debug)]
3955pub struct EchoEchoTableRequestComposedResponder {
3956 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
3957 tx_id: u32,
3958}
3959
3960impl std::ops::Drop for EchoEchoTableRequestComposedResponder {
3964 fn drop(&mut self) {
3965 self.control_handle.shutdown();
3966 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3968 }
3969}
3970
3971impl fidl::endpoints::Responder for EchoEchoTableRequestComposedResponder {
3972 type ControlHandle = EchoControlHandle;
3973
3974 fn control_handle(&self) -> &EchoControlHandle {
3975 &self.control_handle
3976 }
3977
3978 fn drop_without_shutdown(mut self) {
3979 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3981 std::mem::forget(self);
3983 }
3984}
3985
3986impl EchoEchoTableRequestComposedResponder {
3987 pub fn send(
3991 self,
3992 mut value: &fidl_fidl_test_imported::SimpleStruct,
3993 ) -> Result<(), fidl::Error> {
3994 let _result = self.send_raw(value);
3995 if _result.is_err() {
3996 self.control_handle.shutdown();
3997 }
3998 self.drop_without_shutdown();
3999 _result
4000 }
4001
4002 pub fn send_no_shutdown_on_err(
4004 self,
4005 mut value: &fidl_fidl_test_imported::SimpleStruct,
4006 ) -> Result<(), fidl::Error> {
4007 let _result = self.send_raw(value);
4008 self.drop_without_shutdown();
4009 _result
4010 }
4011
4012 fn send_raw(
4013 &self,
4014 mut value: &fidl_fidl_test_imported::SimpleStruct,
4015 ) -> Result<(), fidl::Error> {
4016 self.control_handle.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
4017 (value,),
4018 self.tx_id,
4019 0x1d545c738c7a8ee,
4020 fidl::encoding::DynamicFlags::empty(),
4021 )
4022 }
4023}
4024
4025#[must_use = "FIDL methods require a response to be sent"]
4026#[derive(Debug)]
4027pub struct EchoEchoUnionResponseWithErrorComposedResponder {
4028 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4029 tx_id: u32,
4030}
4031
4032impl std::ops::Drop for EchoEchoUnionResponseWithErrorComposedResponder {
4036 fn drop(&mut self) {
4037 self.control_handle.shutdown();
4038 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4040 }
4041}
4042
4043impl fidl::endpoints::Responder for EchoEchoUnionResponseWithErrorComposedResponder {
4044 type ControlHandle = EchoControlHandle;
4045
4046 fn control_handle(&self) -> &EchoControlHandle {
4047 &self.control_handle
4048 }
4049
4050 fn drop_without_shutdown(mut self) {
4051 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4053 std::mem::forget(self);
4055 }
4056}
4057
4058impl EchoEchoUnionResponseWithErrorComposedResponder {
4059 pub fn send(
4063 self,
4064 mut result: Result<
4065 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4066 u32,
4067 >,
4068 ) -> Result<(), fidl::Error> {
4069 let _result = self.send_raw(result);
4070 if _result.is_err() {
4071 self.control_handle.shutdown();
4072 }
4073 self.drop_without_shutdown();
4074 _result
4075 }
4076
4077 pub fn send_no_shutdown_on_err(
4079 self,
4080 mut result: Result<
4081 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4082 u32,
4083 >,
4084 ) -> Result<(), fidl::Error> {
4085 let _result = self.send_raw(result);
4086 self.drop_without_shutdown();
4087 _result
4088 }
4089
4090 fn send_raw(
4091 &self,
4092 mut result: Result<
4093 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4094 u32,
4095 >,
4096 ) -> Result<(), fidl::Error> {
4097 self.control_handle.inner.send::<fidl::encoding::ResultType<
4098 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4099 u32,
4100 >>(
4101 result,
4102 self.tx_id,
4103 0x38a67e88d6106443,
4104 fidl::encoding::DynamicFlags::empty(),
4105 )
4106 }
4107}
4108
4109#[must_use = "FIDL methods require a response to be sent"]
4110#[derive(Debug)]
4111pub struct EchoEchoMinimalResponder {
4112 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4113 tx_id: u32,
4114}
4115
4116impl std::ops::Drop for EchoEchoMinimalResponder {
4120 fn drop(&mut self) {
4121 self.control_handle.shutdown();
4122 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4124 }
4125}
4126
4127impl fidl::endpoints::Responder for EchoEchoMinimalResponder {
4128 type ControlHandle = EchoControlHandle;
4129
4130 fn control_handle(&self) -> &EchoControlHandle {
4131 &self.control_handle
4132 }
4133
4134 fn drop_without_shutdown(mut self) {
4135 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4137 std::mem::forget(self);
4139 }
4140}
4141
4142impl EchoEchoMinimalResponder {
4143 pub fn send(self) -> Result<(), fidl::Error> {
4147 let _result = self.send_raw();
4148 if _result.is_err() {
4149 self.control_handle.shutdown();
4150 }
4151 self.drop_without_shutdown();
4152 _result
4153 }
4154
4155 pub fn send_no_shutdown_on_err(self) -> Result<(), fidl::Error> {
4157 let _result = self.send_raw();
4158 self.drop_without_shutdown();
4159 _result
4160 }
4161
4162 fn send_raw(&self) -> Result<(), fidl::Error> {
4163 self.control_handle.inner.send::<fidl::encoding::EmptyPayload>(
4164 (),
4165 self.tx_id,
4166 0x39edd68c837482ec,
4167 fidl::encoding::DynamicFlags::empty(),
4168 )
4169 }
4170}
4171
4172#[must_use = "FIDL methods require a response to be sent"]
4173#[derive(Debug)]
4174pub struct EchoEchoMinimalWithErrorResponder {
4175 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4176 tx_id: u32,
4177}
4178
4179impl std::ops::Drop for EchoEchoMinimalWithErrorResponder {
4183 fn drop(&mut self) {
4184 self.control_handle.shutdown();
4185 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4187 }
4188}
4189
4190impl fidl::endpoints::Responder for EchoEchoMinimalWithErrorResponder {
4191 type ControlHandle = EchoControlHandle;
4192
4193 fn control_handle(&self) -> &EchoControlHandle {
4194 &self.control_handle
4195 }
4196
4197 fn drop_without_shutdown(mut self) {
4198 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4200 std::mem::forget(self);
4202 }
4203}
4204
4205impl EchoEchoMinimalWithErrorResponder {
4206 pub fn send(self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4210 let _result = self.send_raw(result);
4211 if _result.is_err() {
4212 self.control_handle.shutdown();
4213 }
4214 self.drop_without_shutdown();
4215 _result
4216 }
4217
4218 pub fn send_no_shutdown_on_err(self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4220 let _result = self.send_raw(result);
4221 self.drop_without_shutdown();
4222 _result
4223 }
4224
4225 fn send_raw(&self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4226 self.control_handle
4227 .inner
4228 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>>(
4229 result,
4230 self.tx_id,
4231 0x36f4695996e35acc,
4232 fidl::encoding::DynamicFlags::empty(),
4233 )
4234 }
4235}
4236
4237#[must_use = "FIDL methods require a response to be sent"]
4238#[derive(Debug)]
4239pub struct EchoEchoStructResponder {
4240 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4241 tx_id: u32,
4242}
4243
4244impl std::ops::Drop for EchoEchoStructResponder {
4248 fn drop(&mut self) {
4249 self.control_handle.shutdown();
4250 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4252 }
4253}
4254
4255impl fidl::endpoints::Responder for EchoEchoStructResponder {
4256 type ControlHandle = EchoControlHandle;
4257
4258 fn control_handle(&self) -> &EchoControlHandle {
4259 &self.control_handle
4260 }
4261
4262 fn drop_without_shutdown(mut self) {
4263 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4265 std::mem::forget(self);
4267 }
4268}
4269
4270impl EchoEchoStructResponder {
4271 pub fn send(self, mut value: Struct) -> Result<(), fidl::Error> {
4275 let _result = self.send_raw(value);
4276 if _result.is_err() {
4277 self.control_handle.shutdown();
4278 }
4279 self.drop_without_shutdown();
4280 _result
4281 }
4282
4283 pub fn send_no_shutdown_on_err(self, mut value: Struct) -> Result<(), fidl::Error> {
4285 let _result = self.send_raw(value);
4286 self.drop_without_shutdown();
4287 _result
4288 }
4289
4290 fn send_raw(&self, mut value: Struct) -> Result<(), fidl::Error> {
4291 self.control_handle.inner.send::<EchoEchoStructResponse>(
4292 (&mut value,),
4293 self.tx_id,
4294 0x4c2f85818cc53f37,
4295 fidl::encoding::DynamicFlags::empty(),
4296 )
4297 }
4298}
4299
4300#[must_use = "FIDL methods require a response to be sent"]
4301#[derive(Debug)]
4302pub struct EchoEchoStructWithErrorResponder {
4303 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4304 tx_id: u32,
4305}
4306
4307impl std::ops::Drop for EchoEchoStructWithErrorResponder {
4311 fn drop(&mut self) {
4312 self.control_handle.shutdown();
4313 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4315 }
4316}
4317
4318impl fidl::endpoints::Responder for EchoEchoStructWithErrorResponder {
4319 type ControlHandle = EchoControlHandle;
4320
4321 fn control_handle(&self) -> &EchoControlHandle {
4322 &self.control_handle
4323 }
4324
4325 fn drop_without_shutdown(mut self) {
4326 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4328 std::mem::forget(self);
4330 }
4331}
4332
4333impl EchoEchoStructWithErrorResponder {
4334 pub fn send(self, mut result: Result<Struct, DefaultEnum>) -> Result<(), fidl::Error> {
4338 let _result = self.send_raw(result);
4339 if _result.is_err() {
4340 self.control_handle.shutdown();
4341 }
4342 self.drop_without_shutdown();
4343 _result
4344 }
4345
4346 pub fn send_no_shutdown_on_err(
4348 self,
4349 mut result: Result<Struct, DefaultEnum>,
4350 ) -> Result<(), fidl::Error> {
4351 let _result = self.send_raw(result);
4352 self.drop_without_shutdown();
4353 _result
4354 }
4355
4356 fn send_raw(&self, mut result: Result<Struct, DefaultEnum>) -> Result<(), fidl::Error> {
4357 self.control_handle.inner.send::<fidl::encoding::ResultType<
4358 EchoEchoStructWithErrorResponse,
4359 DefaultEnum,
4360 >>(
4361 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4362 self.tx_id,
4363 0x46cb32652c4c0899,
4364 fidl::encoding::DynamicFlags::empty(),
4365 )
4366 }
4367}
4368
4369#[must_use = "FIDL methods require a response to be sent"]
4370#[derive(Debug)]
4371pub struct EchoEchoArraysResponder {
4372 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4373 tx_id: u32,
4374}
4375
4376impl std::ops::Drop for EchoEchoArraysResponder {
4380 fn drop(&mut self) {
4381 self.control_handle.shutdown();
4382 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4384 }
4385}
4386
4387impl fidl::endpoints::Responder for EchoEchoArraysResponder {
4388 type ControlHandle = EchoControlHandle;
4389
4390 fn control_handle(&self) -> &EchoControlHandle {
4391 &self.control_handle
4392 }
4393
4394 fn drop_without_shutdown(mut self) {
4395 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4397 std::mem::forget(self);
4399 }
4400}
4401
4402impl EchoEchoArraysResponder {
4403 pub fn send(self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4407 let _result = self.send_raw(value);
4408 if _result.is_err() {
4409 self.control_handle.shutdown();
4410 }
4411 self.drop_without_shutdown();
4412 _result
4413 }
4414
4415 pub fn send_no_shutdown_on_err(self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4417 let _result = self.send_raw(value);
4418 self.drop_without_shutdown();
4419 _result
4420 }
4421
4422 fn send_raw(&self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4423 self.control_handle.inner.send::<EchoEchoArraysResponse>(
4424 (&mut value,),
4425 self.tx_id,
4426 0x1b6019d5611f2470,
4427 fidl::encoding::DynamicFlags::empty(),
4428 )
4429 }
4430}
4431
4432#[must_use = "FIDL methods require a response to be sent"]
4433#[derive(Debug)]
4434pub struct EchoEchoArraysWithErrorResponder {
4435 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4436 tx_id: u32,
4437}
4438
4439impl std::ops::Drop for EchoEchoArraysWithErrorResponder {
4443 fn drop(&mut self) {
4444 self.control_handle.shutdown();
4445 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4447 }
4448}
4449
4450impl fidl::endpoints::Responder for EchoEchoArraysWithErrorResponder {
4451 type ControlHandle = EchoControlHandle;
4452
4453 fn control_handle(&self) -> &EchoControlHandle {
4454 &self.control_handle
4455 }
4456
4457 fn drop_without_shutdown(mut self) {
4458 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4460 std::mem::forget(self);
4462 }
4463}
4464
4465impl EchoEchoArraysWithErrorResponder {
4466 pub fn send(self, mut result: Result<ArraysStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4470 let _result = self.send_raw(result);
4471 if _result.is_err() {
4472 self.control_handle.shutdown();
4473 }
4474 self.drop_without_shutdown();
4475 _result
4476 }
4477
4478 pub fn send_no_shutdown_on_err(
4480 self,
4481 mut result: Result<ArraysStruct, DefaultEnum>,
4482 ) -> Result<(), fidl::Error> {
4483 let _result = self.send_raw(result);
4484 self.drop_without_shutdown();
4485 _result
4486 }
4487
4488 fn send_raw(&self, mut result: Result<ArraysStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4489 self.control_handle.inner.send::<fidl::encoding::ResultType<
4490 EchoEchoArraysWithErrorResponse,
4491 DefaultEnum,
4492 >>(
4493 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4494 self.tx_id,
4495 0x6dbf26e67e253afa,
4496 fidl::encoding::DynamicFlags::empty(),
4497 )
4498 }
4499}
4500
4501#[must_use = "FIDL methods require a response to be sent"]
4502#[derive(Debug)]
4503pub struct EchoEchoVectorsResponder {
4504 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4505 tx_id: u32,
4506}
4507
4508impl std::ops::Drop for EchoEchoVectorsResponder {
4512 fn drop(&mut self) {
4513 self.control_handle.shutdown();
4514 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4516 }
4517}
4518
4519impl fidl::endpoints::Responder for EchoEchoVectorsResponder {
4520 type ControlHandle = EchoControlHandle;
4521
4522 fn control_handle(&self) -> &EchoControlHandle {
4523 &self.control_handle
4524 }
4525
4526 fn drop_without_shutdown(mut self) {
4527 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4529 std::mem::forget(self);
4531 }
4532}
4533
4534impl EchoEchoVectorsResponder {
4535 pub fn send(self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4539 let _result = self.send_raw(value);
4540 if _result.is_err() {
4541 self.control_handle.shutdown();
4542 }
4543 self.drop_without_shutdown();
4544 _result
4545 }
4546
4547 pub fn send_no_shutdown_on_err(self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4549 let _result = self.send_raw(value);
4550 self.drop_without_shutdown();
4551 _result
4552 }
4553
4554 fn send_raw(&self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4555 self.control_handle.inner.send::<EchoEchoVectorsResponse>(
4556 (&mut value,),
4557 self.tx_id,
4558 0x1582623f0d9f6e5e,
4559 fidl::encoding::DynamicFlags::empty(),
4560 )
4561 }
4562}
4563
4564#[must_use = "FIDL methods require a response to be sent"]
4565#[derive(Debug)]
4566pub struct EchoEchoVectorsWithErrorResponder {
4567 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4568 tx_id: u32,
4569}
4570
4571impl std::ops::Drop for EchoEchoVectorsWithErrorResponder {
4575 fn drop(&mut self) {
4576 self.control_handle.shutdown();
4577 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4579 }
4580}
4581
4582impl fidl::endpoints::Responder for EchoEchoVectorsWithErrorResponder {
4583 type ControlHandle = EchoControlHandle;
4584
4585 fn control_handle(&self) -> &EchoControlHandle {
4586 &self.control_handle
4587 }
4588
4589 fn drop_without_shutdown(mut self) {
4590 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4592 std::mem::forget(self);
4594 }
4595}
4596
4597impl EchoEchoVectorsWithErrorResponder {
4598 pub fn send(self, mut result: Result<VectorsStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4602 let _result = self.send_raw(result);
4603 if _result.is_err() {
4604 self.control_handle.shutdown();
4605 }
4606 self.drop_without_shutdown();
4607 _result
4608 }
4609
4610 pub fn send_no_shutdown_on_err(
4612 self,
4613 mut result: Result<VectorsStruct, DefaultEnum>,
4614 ) -> Result<(), fidl::Error> {
4615 let _result = self.send_raw(result);
4616 self.drop_without_shutdown();
4617 _result
4618 }
4619
4620 fn send_raw(&self, mut result: Result<VectorsStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4621 self.control_handle.inner.send::<fidl::encoding::ResultType<
4622 EchoEchoVectorsWithErrorResponse,
4623 DefaultEnum,
4624 >>(
4625 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4626 self.tx_id,
4627 0x730f163401e2b3e5,
4628 fidl::encoding::DynamicFlags::empty(),
4629 )
4630 }
4631}
4632
4633#[must_use = "FIDL methods require a response to be sent"]
4634#[derive(Debug)]
4635pub struct EchoEchoTableResponder {
4636 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4637 tx_id: u32,
4638}
4639
4640impl std::ops::Drop for EchoEchoTableResponder {
4644 fn drop(&mut self) {
4645 self.control_handle.shutdown();
4646 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4648 }
4649}
4650
4651impl fidl::endpoints::Responder for EchoEchoTableResponder {
4652 type ControlHandle = EchoControlHandle;
4653
4654 fn control_handle(&self) -> &EchoControlHandle {
4655 &self.control_handle
4656 }
4657
4658 fn drop_without_shutdown(mut self) {
4659 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4661 std::mem::forget(self);
4663 }
4664}
4665
4666impl EchoEchoTableResponder {
4667 pub fn send(self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4671 let _result = self.send_raw(value);
4672 if _result.is_err() {
4673 self.control_handle.shutdown();
4674 }
4675 self.drop_without_shutdown();
4676 _result
4677 }
4678
4679 pub fn send_no_shutdown_on_err(self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4681 let _result = self.send_raw(value);
4682 self.drop_without_shutdown();
4683 _result
4684 }
4685
4686 fn send_raw(&self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4687 self.control_handle.inner.send::<EchoEchoTableResponse>(
4688 (&mut value,),
4689 self.tx_id,
4690 0x4f1fb0a512f47c4b,
4691 fidl::encoding::DynamicFlags::empty(),
4692 )
4693 }
4694}
4695
4696#[must_use = "FIDL methods require a response to be sent"]
4697#[derive(Debug)]
4698pub struct EchoEchoTableWithErrorResponder {
4699 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4700 tx_id: u32,
4701}
4702
4703impl std::ops::Drop for EchoEchoTableWithErrorResponder {
4707 fn drop(&mut self) {
4708 self.control_handle.shutdown();
4709 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4711 }
4712}
4713
4714impl fidl::endpoints::Responder for EchoEchoTableWithErrorResponder {
4715 type ControlHandle = EchoControlHandle;
4716
4717 fn control_handle(&self) -> &EchoControlHandle {
4718 &self.control_handle
4719 }
4720
4721 fn drop_without_shutdown(mut self) {
4722 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4724 std::mem::forget(self);
4726 }
4727}
4728
4729impl EchoEchoTableWithErrorResponder {
4730 pub fn send(self, mut result: Result<AllTypesTable, DefaultEnum>) -> Result<(), fidl::Error> {
4734 let _result = self.send_raw(result);
4735 if _result.is_err() {
4736 self.control_handle.shutdown();
4737 }
4738 self.drop_without_shutdown();
4739 _result
4740 }
4741
4742 pub fn send_no_shutdown_on_err(
4744 self,
4745 mut result: Result<AllTypesTable, DefaultEnum>,
4746 ) -> Result<(), fidl::Error> {
4747 let _result = self.send_raw(result);
4748 self.drop_without_shutdown();
4749 _result
4750 }
4751
4752 fn send_raw(&self, mut result: Result<AllTypesTable, DefaultEnum>) -> Result<(), fidl::Error> {
4753 self.control_handle.inner.send::<fidl::encoding::ResultType<
4754 EchoEchoTableWithErrorResponse,
4755 DefaultEnum,
4756 >>(
4757 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4758 self.tx_id,
4759 0x44e835cb1eb9a931,
4760 fidl::encoding::DynamicFlags::empty(),
4761 )
4762 }
4763}
4764
4765#[must_use = "FIDL methods require a response to be sent"]
4766#[derive(Debug)]
4767pub struct EchoEchoXunionsResponder {
4768 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4769 tx_id: u32,
4770}
4771
4772impl std::ops::Drop for EchoEchoXunionsResponder {
4776 fn drop(&mut self) {
4777 self.control_handle.shutdown();
4778 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4780 }
4781}
4782
4783impl fidl::endpoints::Responder for EchoEchoXunionsResponder {
4784 type ControlHandle = EchoControlHandle;
4785
4786 fn control_handle(&self) -> &EchoControlHandle {
4787 &self.control_handle
4788 }
4789
4790 fn drop_without_shutdown(mut self) {
4791 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4793 std::mem::forget(self);
4795 }
4796}
4797
4798impl EchoEchoXunionsResponder {
4799 pub fn send(self, mut value: Vec<AllTypesXunion>) -> Result<(), fidl::Error> {
4803 let _result = self.send_raw(value);
4804 if _result.is_err() {
4805 self.control_handle.shutdown();
4806 }
4807 self.drop_without_shutdown();
4808 _result
4809 }
4810
4811 pub fn send_no_shutdown_on_err(
4813 self,
4814 mut value: Vec<AllTypesXunion>,
4815 ) -> Result<(), fidl::Error> {
4816 let _result = self.send_raw(value);
4817 self.drop_without_shutdown();
4818 _result
4819 }
4820
4821 fn send_raw(&self, mut value: Vec<AllTypesXunion>) -> Result<(), fidl::Error> {
4822 self.control_handle.inner.send::<EchoEchoXunionsResponse>(
4823 (value.as_mut(),),
4824 self.tx_id,
4825 0x3dc181909041a583,
4826 fidl::encoding::DynamicFlags::empty(),
4827 )
4828 }
4829}
4830
4831#[must_use = "FIDL methods require a response to be sent"]
4832#[derive(Debug)]
4833pub struct EchoEchoXunionsWithErrorResponder {
4834 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4835 tx_id: u32,
4836}
4837
4838impl std::ops::Drop for EchoEchoXunionsWithErrorResponder {
4842 fn drop(&mut self) {
4843 self.control_handle.shutdown();
4844 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4846 }
4847}
4848
4849impl fidl::endpoints::Responder for EchoEchoXunionsWithErrorResponder {
4850 type ControlHandle = EchoControlHandle;
4851
4852 fn control_handle(&self) -> &EchoControlHandle {
4853 &self.control_handle
4854 }
4855
4856 fn drop_without_shutdown(mut self) {
4857 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4859 std::mem::forget(self);
4861 }
4862}
4863
4864impl EchoEchoXunionsWithErrorResponder {
4865 pub fn send(
4869 self,
4870 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4871 ) -> Result<(), fidl::Error> {
4872 let _result = self.send_raw(result);
4873 if _result.is_err() {
4874 self.control_handle.shutdown();
4875 }
4876 self.drop_without_shutdown();
4877 _result
4878 }
4879
4880 pub fn send_no_shutdown_on_err(
4882 self,
4883 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4884 ) -> Result<(), fidl::Error> {
4885 let _result = self.send_raw(result);
4886 self.drop_without_shutdown();
4887 _result
4888 }
4889
4890 fn send_raw(
4891 &self,
4892 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4893 ) -> Result<(), fidl::Error> {
4894 self.control_handle.inner.send::<fidl::encoding::ResultType<
4895 EchoEchoXunionsWithErrorResponse,
4896 DefaultEnum,
4897 >>(
4898 result.as_mut().map_err(|e| *e).map(|value| (value.as_mut_slice(),)),
4899 self.tx_id,
4900 0x75184102667fa766,
4901 fidl::encoding::DynamicFlags::empty(),
4902 )
4903 }
4904}
4905
4906#[must_use = "FIDL methods require a response to be sent"]
4907#[derive(Debug)]
4908pub struct EchoEchoNamedStructResponder {
4909 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4910 tx_id: u32,
4911}
4912
4913impl std::ops::Drop for EchoEchoNamedStructResponder {
4917 fn drop(&mut self) {
4918 self.control_handle.shutdown();
4919 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4921 }
4922}
4923
4924impl fidl::endpoints::Responder for EchoEchoNamedStructResponder {
4925 type ControlHandle = EchoControlHandle;
4926
4927 fn control_handle(&self) -> &EchoControlHandle {
4928 &self.control_handle
4929 }
4930
4931 fn drop_without_shutdown(mut self) {
4932 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4934 std::mem::forget(self);
4936 }
4937}
4938
4939impl EchoEchoNamedStructResponder {
4940 pub fn send(
4944 self,
4945 mut value: &fidl_fidl_test_imported::SimpleStruct,
4946 ) -> Result<(), fidl::Error> {
4947 let _result = self.send_raw(value);
4948 if _result.is_err() {
4949 self.control_handle.shutdown();
4950 }
4951 self.drop_without_shutdown();
4952 _result
4953 }
4954
4955 pub fn send_no_shutdown_on_err(
4957 self,
4958 mut value: &fidl_fidl_test_imported::SimpleStruct,
4959 ) -> Result<(), fidl::Error> {
4960 let _result = self.send_raw(value);
4961 self.drop_without_shutdown();
4962 _result
4963 }
4964
4965 fn send_raw(
4966 &self,
4967 mut value: &fidl_fidl_test_imported::SimpleStruct,
4968 ) -> Result<(), fidl::Error> {
4969 self.control_handle.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
4970 (value,),
4971 self.tx_id,
4972 0xf2d4aa9e65f7111,
4973 fidl::encoding::DynamicFlags::empty(),
4974 )
4975 }
4976}
4977
4978#[must_use = "FIDL methods require a response to be sent"]
4979#[derive(Debug)]
4980pub struct EchoEchoNamedStructWithErrorResponder {
4981 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4982 tx_id: u32,
4983}
4984
4985impl std::ops::Drop for EchoEchoNamedStructWithErrorResponder {
4989 fn drop(&mut self) {
4990 self.control_handle.shutdown();
4991 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4993 }
4994}
4995
4996impl fidl::endpoints::Responder for EchoEchoNamedStructWithErrorResponder {
4997 type ControlHandle = EchoControlHandle;
4998
4999 fn control_handle(&self) -> &EchoControlHandle {
5000 &self.control_handle
5001 }
5002
5003 fn drop_without_shutdown(mut self) {
5004 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5006 std::mem::forget(self);
5008 }
5009}
5010
5011impl EchoEchoNamedStructWithErrorResponder {
5012 pub fn send(
5016 self,
5017 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5018 ) -> Result<(), fidl::Error> {
5019 let _result = self.send_raw(result);
5020 if _result.is_err() {
5021 self.control_handle.shutdown();
5022 }
5023 self.drop_without_shutdown();
5024 _result
5025 }
5026
5027 pub fn send_no_shutdown_on_err(
5029 self,
5030 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5031 ) -> Result<(), fidl::Error> {
5032 let _result = self.send_raw(result);
5033 self.drop_without_shutdown();
5034 _result
5035 }
5036
5037 fn send_raw(
5038 &self,
5039 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5040 ) -> Result<(), fidl::Error> {
5041 self.control_handle.inner.send::<fidl::encoding::ResultType<
5042 fidl_fidl_test_imported::ResponseStruct,
5043 u32,
5044 >>(
5045 result.map(|value| (value,)),
5046 self.tx_id,
5047 0x5766fee9e74442e8,
5048 fidl::encoding::DynamicFlags::empty(),
5049 )
5050 }
5051}
5052
5053#[must_use = "FIDL methods require a response to be sent"]
5054#[derive(Debug)]
5055pub struct EchoEchoTablePayloadResponder {
5056 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5057 tx_id: u32,
5058}
5059
5060impl std::ops::Drop for EchoEchoTablePayloadResponder {
5064 fn drop(&mut self) {
5065 self.control_handle.shutdown();
5066 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5068 }
5069}
5070
5071impl fidl::endpoints::Responder for EchoEchoTablePayloadResponder {
5072 type ControlHandle = EchoControlHandle;
5073
5074 fn control_handle(&self) -> &EchoControlHandle {
5075 &self.control_handle
5076 }
5077
5078 fn drop_without_shutdown(mut self) {
5079 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5081 std::mem::forget(self);
5083 }
5084}
5085
5086impl EchoEchoTablePayloadResponder {
5087 pub fn send(self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5091 let _result = self.send_raw(payload);
5092 if _result.is_err() {
5093 self.control_handle.shutdown();
5094 }
5095 self.drop_without_shutdown();
5096 _result
5097 }
5098
5099 pub fn send_no_shutdown_on_err(self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5101 let _result = self.send_raw(payload);
5102 self.drop_without_shutdown();
5103 _result
5104 }
5105
5106 fn send_raw(&self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5107 self.control_handle.inner.send::<ResponseTable>(
5108 payload,
5109 self.tx_id,
5110 0x641d98087378c003,
5111 fidl::encoding::DynamicFlags::empty(),
5112 )
5113 }
5114}
5115
5116#[must_use = "FIDL methods require a response to be sent"]
5117#[derive(Debug)]
5118pub struct EchoEchoTablePayloadWithErrorResponder {
5119 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5120 tx_id: u32,
5121}
5122
5123impl std::ops::Drop for EchoEchoTablePayloadWithErrorResponder {
5127 fn drop(&mut self) {
5128 self.control_handle.shutdown();
5129 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5131 }
5132}
5133
5134impl fidl::endpoints::Responder for EchoEchoTablePayloadWithErrorResponder {
5135 type ControlHandle = EchoControlHandle;
5136
5137 fn control_handle(&self) -> &EchoControlHandle {
5138 &self.control_handle
5139 }
5140
5141 fn drop_without_shutdown(mut self) {
5142 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5144 std::mem::forget(self);
5146 }
5147}
5148
5149impl EchoEchoTablePayloadWithErrorResponder {
5150 pub fn send(self, mut result: Result<&ResponseTable, DefaultEnum>) -> Result<(), fidl::Error> {
5154 let _result = self.send_raw(result);
5155 if _result.is_err() {
5156 self.control_handle.shutdown();
5157 }
5158 self.drop_without_shutdown();
5159 _result
5160 }
5161
5162 pub fn send_no_shutdown_on_err(
5164 self,
5165 mut result: Result<&ResponseTable, DefaultEnum>,
5166 ) -> Result<(), fidl::Error> {
5167 let _result = self.send_raw(result);
5168 self.drop_without_shutdown();
5169 _result
5170 }
5171
5172 fn send_raw(&self, mut result: Result<&ResponseTable, DefaultEnum>) -> Result<(), fidl::Error> {
5173 self.control_handle.inner.send::<fidl::encoding::ResultType<ResponseTable, DefaultEnum>>(
5174 result,
5175 self.tx_id,
5176 0x636ed243761ab66d,
5177 fidl::encoding::DynamicFlags::empty(),
5178 )
5179 }
5180}
5181
5182#[must_use = "FIDL methods require a response to be sent"]
5183#[derive(Debug)]
5184pub struct EchoEchoUnionPayloadResponder {
5185 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5186 tx_id: u32,
5187}
5188
5189impl std::ops::Drop for EchoEchoUnionPayloadResponder {
5193 fn drop(&mut self) {
5194 self.control_handle.shutdown();
5195 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5197 }
5198}
5199
5200impl fidl::endpoints::Responder for EchoEchoUnionPayloadResponder {
5201 type ControlHandle = EchoControlHandle;
5202
5203 fn control_handle(&self) -> &EchoControlHandle {
5204 &self.control_handle
5205 }
5206
5207 fn drop_without_shutdown(mut self) {
5208 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5210 std::mem::forget(self);
5212 }
5213}
5214
5215impl EchoEchoUnionPayloadResponder {
5216 pub fn send(self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5220 let _result = self.send_raw(payload);
5221 if _result.is_err() {
5222 self.control_handle.shutdown();
5223 }
5224 self.drop_without_shutdown();
5225 _result
5226 }
5227
5228 pub fn send_no_shutdown_on_err(self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5230 let _result = self.send_raw(payload);
5231 self.drop_without_shutdown();
5232 _result
5233 }
5234
5235 fn send_raw(&self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5236 self.control_handle.inner.send::<ResponseUnion>(
5237 payload,
5238 self.tx_id,
5239 0x66def9e793f10c55,
5240 fidl::encoding::DynamicFlags::empty(),
5241 )
5242 }
5243}
5244
5245#[must_use = "FIDL methods require a response to be sent"]
5246#[derive(Debug)]
5247pub struct EchoEchoUnionPayloadWithErrorResponder {
5248 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5249 tx_id: u32,
5250}
5251
5252impl std::ops::Drop for EchoEchoUnionPayloadWithErrorResponder {
5256 fn drop(&mut self) {
5257 self.control_handle.shutdown();
5258 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5260 }
5261}
5262
5263impl fidl::endpoints::Responder for EchoEchoUnionPayloadWithErrorResponder {
5264 type ControlHandle = EchoControlHandle;
5265
5266 fn control_handle(&self) -> &EchoControlHandle {
5267 &self.control_handle
5268 }
5269
5270 fn drop_without_shutdown(mut self) {
5271 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5273 std::mem::forget(self);
5275 }
5276}
5277
5278impl EchoEchoUnionPayloadWithErrorResponder {
5279 pub fn send(self, mut result: Result<&ResponseUnion, DefaultEnum>) -> Result<(), fidl::Error> {
5283 let _result = self.send_raw(result);
5284 if _result.is_err() {
5285 self.control_handle.shutdown();
5286 }
5287 self.drop_without_shutdown();
5288 _result
5289 }
5290
5291 pub fn send_no_shutdown_on_err(
5293 self,
5294 mut result: Result<&ResponseUnion, DefaultEnum>,
5295 ) -> Result<(), fidl::Error> {
5296 let _result = self.send_raw(result);
5297 self.drop_without_shutdown();
5298 _result
5299 }
5300
5301 fn send_raw(&self, mut result: Result<&ResponseUnion, DefaultEnum>) -> Result<(), fidl::Error> {
5302 self.control_handle.inner.send::<fidl::encoding::ResultType<ResponseUnion, DefaultEnum>>(
5303 result,
5304 self.tx_id,
5305 0x1be890d6e68ef063,
5306 fidl::encoding::DynamicFlags::empty(),
5307 )
5308 }
5309}
5310
5311mod internal {
5312 use super::*;
5313
5314 impl fidl::encoding::ResourceTypeMarker for ArraysStruct {
5315 type Borrowed<'a> = &'a mut Self;
5316 fn take_or_borrow<'a>(
5317 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5318 ) -> Self::Borrowed<'a> {
5319 value
5320 }
5321 }
5322
5323 unsafe impl fidl::encoding::TypeMarker for ArraysStruct {
5324 type Owned = Self;
5325
5326 #[inline(always)]
5327 fn inline_align(_context: fidl::encoding::Context) -> usize {
5328 8
5329 }
5330
5331 #[inline(always)]
5332 fn inline_size(_context: fidl::encoding::Context) -> usize {
5333 680
5334 }
5335 }
5336
5337 unsafe impl fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
5338 for &mut ArraysStruct
5339 {
5340 #[inline]
5341 unsafe fn encode(
5342 self,
5343 encoder: &mut fidl::encoding::Encoder<
5344 '_,
5345 fidl::encoding::DefaultFuchsiaResourceDialect,
5346 >,
5347 offset: usize,
5348 _depth: fidl::encoding::Depth,
5349 ) -> fidl::Result<()> {
5350 encoder.debug_check_bounds::<ArraysStruct>(offset);
5351 fidl::encoding::Encode::<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
5353 (
5354 <fidl::encoding::Array<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bools),
5355 <fidl::encoding::Array<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int8s),
5356 <fidl::encoding::Array<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int16s),
5357 <fidl::encoding::Array<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int32s),
5358 <fidl::encoding::Array<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int64s),
5359 <fidl::encoding::Array<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint8s),
5360 <fidl::encoding::Array<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint16s),
5361 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint32s),
5362 <fidl::encoding::Array<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint64s),
5363 <fidl::encoding::Array<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float32s),
5364 <fidl::encoding::Array<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float64s),
5365 <fidl::encoding::Array<DefaultEnum, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.enums),
5366 <fidl::encoding::Array<DefaultBits, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bits),
5367 <fidl::encoding::Array<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handles),
5368 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.nullable_handles),
5369 <fidl::encoding::Array<fidl::encoding::UnboundedString, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
5370 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_strings),
5371 <fidl::encoding::Array<ThisIsAStruct, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
5372 <fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_structs),
5373 <fidl::encoding::Array<ThisIsAUnion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
5374 <fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_unions),
5375 <fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.arrays),
5376 <fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.vectors),
5377 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_vectors),
5378 <fidl::encoding::Array<ThisIsATable, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.tables),
5379 <fidl::encoding::Array<ThisIsAXunion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.xunions),
5380 ),
5381 encoder, offset, _depth
5382 )
5383 }
5384 }
5385 unsafe impl<
5386 T0: fidl::encoding::Encode<
5387 fidl::encoding::Array<bool, 3>,
5388 fidl::encoding::DefaultFuchsiaResourceDialect,
5389 >,
5390 T1: fidl::encoding::Encode<
5391 fidl::encoding::Array<i8, 3>,
5392 fidl::encoding::DefaultFuchsiaResourceDialect,
5393 >,
5394 T2: fidl::encoding::Encode<
5395 fidl::encoding::Array<i16, 3>,
5396 fidl::encoding::DefaultFuchsiaResourceDialect,
5397 >,
5398 T3: fidl::encoding::Encode<
5399 fidl::encoding::Array<i32, 3>,
5400 fidl::encoding::DefaultFuchsiaResourceDialect,
5401 >,
5402 T4: fidl::encoding::Encode<
5403 fidl::encoding::Array<i64, 3>,
5404 fidl::encoding::DefaultFuchsiaResourceDialect,
5405 >,
5406 T5: fidl::encoding::Encode<
5407 fidl::encoding::Array<u8, 3>,
5408 fidl::encoding::DefaultFuchsiaResourceDialect,
5409 >,
5410 T6: fidl::encoding::Encode<
5411 fidl::encoding::Array<u16, 3>,
5412 fidl::encoding::DefaultFuchsiaResourceDialect,
5413 >,
5414 T7: fidl::encoding::Encode<
5415 fidl::encoding::Array<u32, 3>,
5416 fidl::encoding::DefaultFuchsiaResourceDialect,
5417 >,
5418 T8: fidl::encoding::Encode<
5419 fidl::encoding::Array<u64, 3>,
5420 fidl::encoding::DefaultFuchsiaResourceDialect,
5421 >,
5422 T9: fidl::encoding::Encode<
5423 fidl::encoding::Array<f32, 3>,
5424 fidl::encoding::DefaultFuchsiaResourceDialect,
5425 >,
5426 T10: fidl::encoding::Encode<
5427 fidl::encoding::Array<f64, 3>,
5428 fidl::encoding::DefaultFuchsiaResourceDialect,
5429 >,
5430 T11: fidl::encoding::Encode<
5431 fidl::encoding::Array<DefaultEnum, 3>,
5432 fidl::encoding::DefaultFuchsiaResourceDialect,
5433 >,
5434 T12: fidl::encoding::Encode<
5435 fidl::encoding::Array<DefaultBits, 3>,
5436 fidl::encoding::DefaultFuchsiaResourceDialect,
5437 >,
5438 T13: fidl::encoding::Encode<
5439 fidl::encoding::Array<
5440 fidl::encoding::HandleType<
5441 fidl::Handle,
5442 { fidl::ObjectType::NONE.into_raw() },
5443 2147483648,
5444 >,
5445 3,
5446 >,
5447 fidl::encoding::DefaultFuchsiaResourceDialect,
5448 >,
5449 T14: fidl::encoding::Encode<
5450 fidl::encoding::Array<
5451 fidl::encoding::Optional<
5452 fidl::encoding::HandleType<
5453 fidl::Handle,
5454 { fidl::ObjectType::NONE.into_raw() },
5455 2147483648,
5456 >,
5457 >,
5458 3,
5459 >,
5460 fidl::encoding::DefaultFuchsiaResourceDialect,
5461 >,
5462 T15: fidl::encoding::Encode<
5463 fidl::encoding::Array<fidl::encoding::UnboundedString, 3>,
5464 fidl::encoding::DefaultFuchsiaResourceDialect,
5465 >,
5466 T16: fidl::encoding::Encode<
5467 fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3>,
5468 fidl::encoding::DefaultFuchsiaResourceDialect,
5469 >,
5470 T17: fidl::encoding::Encode<
5471 fidl::encoding::Array<ThisIsAStruct, 3>,
5472 fidl::encoding::DefaultFuchsiaResourceDialect,
5473 >,
5474 T18: fidl::encoding::Encode<
5475 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5476 fidl::encoding::DefaultFuchsiaResourceDialect,
5477 >,
5478 T19: fidl::encoding::Encode<
5479 fidl::encoding::Array<ThisIsAUnion, 3>,
5480 fidl::encoding::DefaultFuchsiaResourceDialect,
5481 >,
5482 T20: fidl::encoding::Encode<
5483 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5484 fidl::encoding::DefaultFuchsiaResourceDialect,
5485 >,
5486 T21: fidl::encoding::Encode<
5487 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5488 fidl::encoding::DefaultFuchsiaResourceDialect,
5489 >,
5490 T22: fidl::encoding::Encode<
5491 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5492 fidl::encoding::DefaultFuchsiaResourceDialect,
5493 >,
5494 T23: fidl::encoding::Encode<
5495 fidl::encoding::Array<
5496 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5497 3,
5498 >,
5499 fidl::encoding::DefaultFuchsiaResourceDialect,
5500 >,
5501 T24: fidl::encoding::Encode<
5502 fidl::encoding::Array<ThisIsATable, 3>,
5503 fidl::encoding::DefaultFuchsiaResourceDialect,
5504 >,
5505 T25: fidl::encoding::Encode<
5506 fidl::encoding::Array<ThisIsAXunion, 3>,
5507 fidl::encoding::DefaultFuchsiaResourceDialect,
5508 >,
5509 > fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
5510 for (
5511 T0,
5512 T1,
5513 T2,
5514 T3,
5515 T4,
5516 T5,
5517 T6,
5518 T7,
5519 T8,
5520 T9,
5521 T10,
5522 T11,
5523 T12,
5524 T13,
5525 T14,
5526 T15,
5527 T16,
5528 T17,
5529 T18,
5530 T19,
5531 T20,
5532 T21,
5533 T22,
5534 T23,
5535 T24,
5536 T25,
5537 )
5538 {
5539 #[inline]
5540 unsafe fn encode(
5541 self,
5542 encoder: &mut fidl::encoding::Encoder<
5543 '_,
5544 fidl::encoding::DefaultFuchsiaResourceDialect,
5545 >,
5546 offset: usize,
5547 depth: fidl::encoding::Depth,
5548 ) -> fidl::Result<()> {
5549 encoder.debug_check_bounds::<ArraysStruct>(offset);
5550 unsafe {
5553 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(48);
5554 (ptr as *mut u64).write_unaligned(0);
5555 }
5556 unsafe {
5557 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(56);
5558 (ptr as *mut u64).write_unaligned(0);
5559 }
5560 unsafe {
5561 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(104);
5562 (ptr as *mut u64).write_unaligned(0);
5563 }
5564 unsafe {
5565 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(480);
5566 (ptr as *mut u64).write_unaligned(0);
5567 }
5568 self.0.encode(encoder, offset + 0, depth)?;
5570 self.1.encode(encoder, offset + 3, depth)?;
5571 self.2.encode(encoder, offset + 6, depth)?;
5572 self.3.encode(encoder, offset + 12, depth)?;
5573 self.4.encode(encoder, offset + 24, depth)?;
5574 self.5.encode(encoder, offset + 48, depth)?;
5575 self.6.encode(encoder, offset + 52, depth)?;
5576 self.7.encode(encoder, offset + 60, depth)?;
5577 self.8.encode(encoder, offset + 72, depth)?;
5578 self.9.encode(encoder, offset + 96, depth)?;
5579 self.10.encode(encoder, offset + 112, depth)?;
5580 self.11.encode(encoder, offset + 136, depth)?;
5581 self.12.encode(encoder, offset + 148, depth)?;
5582 self.13.encode(encoder, offset + 160, depth)?;
5583 self.14.encode(encoder, offset + 172, depth)?;
5584 self.15.encode(encoder, offset + 184, depth)?;
5585 self.16.encode(encoder, offset + 232, depth)?;
5586 self.17.encode(encoder, offset + 280, depth)?;
5587 self.18.encode(encoder, offset + 328, depth)?;
5588 self.19.encode(encoder, offset + 352, depth)?;
5589 self.20.encode(encoder, offset + 400, depth)?;
5590 self.21.encode(encoder, offset + 448, depth)?;
5591 self.22.encode(encoder, offset + 488, depth)?;
5592 self.23.encode(encoder, offset + 536, depth)?;
5593 self.24.encode(encoder, offset + 584, depth)?;
5594 self.25.encode(encoder, offset + 632, depth)?;
5595 Ok(())
5596 }
5597 }
5598
5599 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for ArraysStruct {
5600 #[inline(always)]
5601 fn new_empty() -> Self {
5602 Self {
5603 bools: fidl::new_empty!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5604 int8s: fidl::new_empty!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5605 int16s: fidl::new_empty!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5606 int32s: fidl::new_empty!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5607 int64s: fidl::new_empty!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5608 uint8s: fidl::new_empty!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5609 uint16s: fidl::new_empty!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5610 uint32s: fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5611 uint64s: fidl::new_empty!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5612 float32s: fidl::new_empty!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5613 float64s: fidl::new_empty!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5614 enums: fidl::new_empty!(fidl::encoding::Array<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5615 bits: fidl::new_empty!(fidl::encoding::Array<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5616 handles: fidl::new_empty!(
5617 fidl::encoding::Array<
5618 fidl::encoding::HandleType<
5619 fidl::Handle,
5620 { fidl::ObjectType::NONE.into_raw() },
5621 2147483648,
5622 >,
5623 3,
5624 >,
5625 fidl::encoding::DefaultFuchsiaResourceDialect
5626 ),
5627 nullable_handles: fidl::new_empty!(
5628 fidl::encoding::Array<
5629 fidl::encoding::Optional<
5630 fidl::encoding::HandleType<
5631 fidl::Handle,
5632 { fidl::ObjectType::NONE.into_raw() },
5633 2147483648,
5634 >,
5635 >,
5636 3,
5637 >,
5638 fidl::encoding::DefaultFuchsiaResourceDialect
5639 ),
5640 strings: fidl::new_empty!(fidl::encoding::Array<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5641 nullable_strings: fidl::new_empty!(
5642 fidl::encoding::Array<
5643 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
5644 3,
5645 >,
5646 fidl::encoding::DefaultFuchsiaResourceDialect
5647 ),
5648 structs: fidl::new_empty!(fidl::encoding::Array<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5649 nullable_structs: fidl::new_empty!(
5650 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5651 fidl::encoding::DefaultFuchsiaResourceDialect
5652 ),
5653 unions: fidl::new_empty!(fidl::encoding::Array<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5654 nullable_unions: fidl::new_empty!(
5655 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5656 fidl::encoding::DefaultFuchsiaResourceDialect
5657 ),
5658 arrays: fidl::new_empty!(
5659 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5660 fidl::encoding::DefaultFuchsiaResourceDialect
5661 ),
5662 vectors: fidl::new_empty!(
5663 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5664 fidl::encoding::DefaultFuchsiaResourceDialect
5665 ),
5666 nullable_vectors: fidl::new_empty!(
5667 fidl::encoding::Array<
5668 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5669 3,
5670 >,
5671 fidl::encoding::DefaultFuchsiaResourceDialect
5672 ),
5673 tables: fidl::new_empty!(fidl::encoding::Array<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5674 xunions: fidl::new_empty!(fidl::encoding::Array<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5675 }
5676 }
5677
5678 #[inline]
5679 unsafe fn decode(
5680 &mut self,
5681 decoder: &mut fidl::encoding::Decoder<
5682 '_,
5683 fidl::encoding::DefaultFuchsiaResourceDialect,
5684 >,
5685 offset: usize,
5686 _depth: fidl::encoding::Depth,
5687 ) -> fidl::Result<()> {
5688 decoder.debug_check_bounds::<Self>(offset);
5689 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(48) };
5691 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5692 let mask = 0xff000000u64;
5693 let maskedval = padval & mask;
5694 if maskedval != 0 {
5695 return Err(fidl::Error::NonZeroPadding {
5696 padding_start: offset + 48 + ((mask as u64).trailing_zeros() / 8) as usize,
5697 });
5698 }
5699 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(56) };
5700 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5701 let mask = 0xffff0000u64;
5702 let maskedval = padval & mask;
5703 if maskedval != 0 {
5704 return Err(fidl::Error::NonZeroPadding {
5705 padding_start: offset + 56 + ((mask as u64).trailing_zeros() / 8) as usize,
5706 });
5707 }
5708 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(104) };
5709 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5710 let mask = 0xffffffff00000000u64;
5711 let maskedval = padval & mask;
5712 if maskedval != 0 {
5713 return Err(fidl::Error::NonZeroPadding {
5714 padding_start: offset + 104 + ((mask as u64).trailing_zeros() / 8) as usize,
5715 });
5716 }
5717 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(480) };
5718 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5719 let mask = 0xffffffff00000000u64;
5720 let maskedval = padval & mask;
5721 if maskedval != 0 {
5722 return Err(fidl::Error::NonZeroPadding {
5723 padding_start: offset + 480 + ((mask as u64).trailing_zeros() / 8) as usize,
5724 });
5725 }
5726 fidl::decode!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bools, decoder, offset + 0, _depth)?;
5727 fidl::decode!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int8s, decoder, offset + 3, _depth)?;
5728 fidl::decode!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int16s, decoder, offset + 6, _depth)?;
5729 fidl::decode!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int32s, decoder, offset + 12, _depth)?;
5730 fidl::decode!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int64s, decoder, offset + 24, _depth)?;
5731 fidl::decode!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint8s, decoder, offset + 48, _depth)?;
5732 fidl::decode!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint16s, decoder, offset + 52, _depth)?;
5733 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint32s, decoder, offset + 60, _depth)?;
5734 fidl::decode!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint64s, decoder, offset + 72, _depth)?;
5735 fidl::decode!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float32s, decoder, offset + 96, _depth)?;
5736 fidl::decode!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float64s, decoder, offset + 112, _depth)?;
5737 fidl::decode!(fidl::encoding::Array<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.enums, decoder, offset + 136, _depth)?;
5738 fidl::decode!(fidl::encoding::Array<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bits, decoder, offset + 148, _depth)?;
5739 fidl::decode!(
5740 fidl::encoding::Array<
5741 fidl::encoding::HandleType<
5742 fidl::Handle,
5743 { fidl::ObjectType::NONE.into_raw() },
5744 2147483648,
5745 >,
5746 3,
5747 >,
5748 fidl::encoding::DefaultFuchsiaResourceDialect,
5749 &mut self.handles,
5750 decoder,
5751 offset + 160,
5752 _depth
5753 )?;
5754 fidl::decode!(
5755 fidl::encoding::Array<
5756 fidl::encoding::Optional<
5757 fidl::encoding::HandleType<
5758 fidl::Handle,
5759 { fidl::ObjectType::NONE.into_raw() },
5760 2147483648,
5761 >,
5762 >,
5763 3,
5764 >,
5765 fidl::encoding::DefaultFuchsiaResourceDialect,
5766 &mut self.nullable_handles,
5767 decoder,
5768 offset + 172,
5769 _depth
5770 )?;
5771 fidl::decode!(fidl::encoding::Array<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.strings, decoder, offset + 184, _depth)?;
5772 fidl::decode!(
5773 fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3>,
5774 fidl::encoding::DefaultFuchsiaResourceDialect,
5775 &mut self.nullable_strings,
5776 decoder,
5777 offset + 232,
5778 _depth
5779 )?;
5780 fidl::decode!(fidl::encoding::Array<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.structs, decoder, offset + 280, _depth)?;
5781 fidl::decode!(
5782 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5783 fidl::encoding::DefaultFuchsiaResourceDialect,
5784 &mut self.nullable_structs,
5785 decoder,
5786 offset + 328,
5787 _depth
5788 )?;
5789 fidl::decode!(fidl::encoding::Array<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.unions, decoder, offset + 352, _depth)?;
5790 fidl::decode!(
5791 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5792 fidl::encoding::DefaultFuchsiaResourceDialect,
5793 &mut self.nullable_unions,
5794 decoder,
5795 offset + 400,
5796 _depth
5797 )?;
5798 fidl::decode!(
5799 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5800 fidl::encoding::DefaultFuchsiaResourceDialect,
5801 &mut self.arrays,
5802 decoder,
5803 offset + 448,
5804 _depth
5805 )?;
5806 fidl::decode!(
5807 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5808 fidl::encoding::DefaultFuchsiaResourceDialect,
5809 &mut self.vectors,
5810 decoder,
5811 offset + 488,
5812 _depth
5813 )?;
5814 fidl::decode!(
5815 fidl::encoding::Array<
5816 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5817 3,
5818 >,
5819 fidl::encoding::DefaultFuchsiaResourceDialect,
5820 &mut self.nullable_vectors,
5821 decoder,
5822 offset + 536,
5823 _depth
5824 )?;
5825 fidl::decode!(fidl::encoding::Array<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.tables, decoder, offset + 584, _depth)?;
5826 fidl::decode!(fidl::encoding::Array<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.xunions, decoder, offset + 632, _depth)?;
5827 Ok(())
5828 }
5829 }
5830
5831 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysRequest {
5832 type Borrowed<'a> = &'a mut Self;
5833 fn take_or_borrow<'a>(
5834 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5835 ) -> Self::Borrowed<'a> {
5836 value
5837 }
5838 }
5839
5840 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysRequest {
5841 type Owned = Self;
5842
5843 #[inline(always)]
5844 fn inline_align(_context: fidl::encoding::Context) -> usize {
5845 8
5846 }
5847
5848 #[inline(always)]
5849 fn inline_size(_context: fidl::encoding::Context) -> usize {
5850 696
5851 }
5852 }
5853
5854 unsafe impl
5855 fidl::encoding::Encode<EchoEchoArraysRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
5856 for &mut EchoEchoArraysRequest
5857 {
5858 #[inline]
5859 unsafe fn encode(
5860 self,
5861 encoder: &mut fidl::encoding::Encoder<
5862 '_,
5863 fidl::encoding::DefaultFuchsiaResourceDialect,
5864 >,
5865 offset: usize,
5866 _depth: fidl::encoding::Depth,
5867 ) -> fidl::Result<()> {
5868 encoder.debug_check_bounds::<EchoEchoArraysRequest>(offset);
5869 fidl::encoding::Encode::<
5871 EchoEchoArraysRequest,
5872 fidl::encoding::DefaultFuchsiaResourceDialect,
5873 >::encode(
5874 (
5875 <ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
5876 &mut self.value,
5877 ),
5878 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
5879 &self.forward_to_server,
5880 ),
5881 ),
5882 encoder,
5883 offset,
5884 _depth,
5885 )
5886 }
5887 }
5888 unsafe impl<
5889 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
5890 T1: fidl::encoding::Encode<
5891 fidl::encoding::UnboundedString,
5892 fidl::encoding::DefaultFuchsiaResourceDialect,
5893 >,
5894 >
5895 fidl::encoding::Encode<EchoEchoArraysRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
5896 for (T0, T1)
5897 {
5898 #[inline]
5899 unsafe fn encode(
5900 self,
5901 encoder: &mut fidl::encoding::Encoder<
5902 '_,
5903 fidl::encoding::DefaultFuchsiaResourceDialect,
5904 >,
5905 offset: usize,
5906 depth: fidl::encoding::Depth,
5907 ) -> fidl::Result<()> {
5908 encoder.debug_check_bounds::<EchoEchoArraysRequest>(offset);
5909 self.0.encode(encoder, offset + 0, depth)?;
5913 self.1.encode(encoder, offset + 680, depth)?;
5914 Ok(())
5915 }
5916 }
5917
5918 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
5919 for EchoEchoArraysRequest
5920 {
5921 #[inline(always)]
5922 fn new_empty() -> Self {
5923 Self {
5924 value: fidl::new_empty!(
5925 ArraysStruct,
5926 fidl::encoding::DefaultFuchsiaResourceDialect
5927 ),
5928 forward_to_server: fidl::new_empty!(
5929 fidl::encoding::UnboundedString,
5930 fidl::encoding::DefaultFuchsiaResourceDialect
5931 ),
5932 }
5933 }
5934
5935 #[inline]
5936 unsafe fn decode(
5937 &mut self,
5938 decoder: &mut fidl::encoding::Decoder<
5939 '_,
5940 fidl::encoding::DefaultFuchsiaResourceDialect,
5941 >,
5942 offset: usize,
5943 _depth: fidl::encoding::Depth,
5944 ) -> fidl::Result<()> {
5945 decoder.debug_check_bounds::<Self>(offset);
5946 fidl::decode!(
5948 ArraysStruct,
5949 fidl::encoding::DefaultFuchsiaResourceDialect,
5950 &mut self.value,
5951 decoder,
5952 offset + 0,
5953 _depth
5954 )?;
5955 fidl::decode!(
5956 fidl::encoding::UnboundedString,
5957 fidl::encoding::DefaultFuchsiaResourceDialect,
5958 &mut self.forward_to_server,
5959 decoder,
5960 offset + 680,
5961 _depth
5962 )?;
5963 Ok(())
5964 }
5965 }
5966
5967 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysResponse {
5968 type Borrowed<'a> = &'a mut Self;
5969 fn take_or_borrow<'a>(
5970 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5971 ) -> Self::Borrowed<'a> {
5972 value
5973 }
5974 }
5975
5976 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysResponse {
5977 type Owned = Self;
5978
5979 #[inline(always)]
5980 fn inline_align(_context: fidl::encoding::Context) -> usize {
5981 8
5982 }
5983
5984 #[inline(always)]
5985 fn inline_size(_context: fidl::encoding::Context) -> usize {
5986 680
5987 }
5988 }
5989
5990 unsafe impl
5991 fidl::encoding::Encode<
5992 EchoEchoArraysResponse,
5993 fidl::encoding::DefaultFuchsiaResourceDialect,
5994 > for &mut EchoEchoArraysResponse
5995 {
5996 #[inline]
5997 unsafe fn encode(
5998 self,
5999 encoder: &mut fidl::encoding::Encoder<
6000 '_,
6001 fidl::encoding::DefaultFuchsiaResourceDialect,
6002 >,
6003 offset: usize,
6004 _depth: fidl::encoding::Depth,
6005 ) -> fidl::Result<()> {
6006 encoder.debug_check_bounds::<EchoEchoArraysResponse>(offset);
6007 fidl::encoding::Encode::<
6009 EchoEchoArraysResponse,
6010 fidl::encoding::DefaultFuchsiaResourceDialect,
6011 >::encode(
6012 (<ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6013 &mut self.value,
6014 ),),
6015 encoder,
6016 offset,
6017 _depth,
6018 )
6019 }
6020 }
6021 unsafe impl<
6022 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6023 >
6024 fidl::encoding::Encode<
6025 EchoEchoArraysResponse,
6026 fidl::encoding::DefaultFuchsiaResourceDialect,
6027 > for (T0,)
6028 {
6029 #[inline]
6030 unsafe fn encode(
6031 self,
6032 encoder: &mut fidl::encoding::Encoder<
6033 '_,
6034 fidl::encoding::DefaultFuchsiaResourceDialect,
6035 >,
6036 offset: usize,
6037 depth: fidl::encoding::Depth,
6038 ) -> fidl::Result<()> {
6039 encoder.debug_check_bounds::<EchoEchoArraysResponse>(offset);
6040 self.0.encode(encoder, offset + 0, depth)?;
6044 Ok(())
6045 }
6046 }
6047
6048 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6049 for EchoEchoArraysResponse
6050 {
6051 #[inline(always)]
6052 fn new_empty() -> Self {
6053 Self {
6054 value: fidl::new_empty!(
6055 ArraysStruct,
6056 fidl::encoding::DefaultFuchsiaResourceDialect
6057 ),
6058 }
6059 }
6060
6061 #[inline]
6062 unsafe fn decode(
6063 &mut self,
6064 decoder: &mut fidl::encoding::Decoder<
6065 '_,
6066 fidl::encoding::DefaultFuchsiaResourceDialect,
6067 >,
6068 offset: usize,
6069 _depth: fidl::encoding::Depth,
6070 ) -> fidl::Result<()> {
6071 decoder.debug_check_bounds::<Self>(offset);
6072 fidl::decode!(
6074 ArraysStruct,
6075 fidl::encoding::DefaultFuchsiaResourceDialect,
6076 &mut self.value,
6077 decoder,
6078 offset + 0,
6079 _depth
6080 )?;
6081 Ok(())
6082 }
6083 }
6084
6085 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysWithErrorRequest {
6086 type Borrowed<'a> = &'a mut Self;
6087 fn take_or_borrow<'a>(
6088 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6089 ) -> Self::Borrowed<'a> {
6090 value
6091 }
6092 }
6093
6094 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysWithErrorRequest {
6095 type Owned = Self;
6096
6097 #[inline(always)]
6098 fn inline_align(_context: fidl::encoding::Context) -> usize {
6099 8
6100 }
6101
6102 #[inline(always)]
6103 fn inline_size(_context: fidl::encoding::Context) -> usize {
6104 712
6105 }
6106 }
6107
6108 unsafe impl
6109 fidl::encoding::Encode<
6110 EchoEchoArraysWithErrorRequest,
6111 fidl::encoding::DefaultFuchsiaResourceDialect,
6112 > for &mut EchoEchoArraysWithErrorRequest
6113 {
6114 #[inline]
6115 unsafe fn encode(
6116 self,
6117 encoder: &mut fidl::encoding::Encoder<
6118 '_,
6119 fidl::encoding::DefaultFuchsiaResourceDialect,
6120 >,
6121 offset: usize,
6122 _depth: fidl::encoding::Depth,
6123 ) -> fidl::Result<()> {
6124 encoder.debug_check_bounds::<EchoEchoArraysWithErrorRequest>(offset);
6125 fidl::encoding::Encode::<
6127 EchoEchoArraysWithErrorRequest,
6128 fidl::encoding::DefaultFuchsiaResourceDialect,
6129 >::encode(
6130 (
6131 <ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6132 &mut self.value,
6133 ),
6134 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
6135 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6136 &self.forward_to_server,
6137 ),
6138 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
6139 ),
6140 encoder,
6141 offset,
6142 _depth,
6143 )
6144 }
6145 }
6146 unsafe impl<
6147 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6148 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
6149 T2: fidl::encoding::Encode<
6150 fidl::encoding::UnboundedString,
6151 fidl::encoding::DefaultFuchsiaResourceDialect,
6152 >,
6153 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
6154 >
6155 fidl::encoding::Encode<
6156 EchoEchoArraysWithErrorRequest,
6157 fidl::encoding::DefaultFuchsiaResourceDialect,
6158 > for (T0, T1, T2, T3)
6159 {
6160 #[inline]
6161 unsafe fn encode(
6162 self,
6163 encoder: &mut fidl::encoding::Encoder<
6164 '_,
6165 fidl::encoding::DefaultFuchsiaResourceDialect,
6166 >,
6167 offset: usize,
6168 depth: fidl::encoding::Depth,
6169 ) -> fidl::Result<()> {
6170 encoder.debug_check_bounds::<EchoEchoArraysWithErrorRequest>(offset);
6171 unsafe {
6174 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(680);
6175 (ptr as *mut u64).write_unaligned(0);
6176 }
6177 unsafe {
6178 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(704);
6179 (ptr as *mut u64).write_unaligned(0);
6180 }
6181 self.0.encode(encoder, offset + 0, depth)?;
6183 self.1.encode(encoder, offset + 680, depth)?;
6184 self.2.encode(encoder, offset + 688, depth)?;
6185 self.3.encode(encoder, offset + 704, depth)?;
6186 Ok(())
6187 }
6188 }
6189
6190 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6191 for EchoEchoArraysWithErrorRequest
6192 {
6193 #[inline(always)]
6194 fn new_empty() -> Self {
6195 Self {
6196 value: fidl::new_empty!(
6197 ArraysStruct,
6198 fidl::encoding::DefaultFuchsiaResourceDialect
6199 ),
6200 result_err: fidl::new_empty!(
6201 DefaultEnum,
6202 fidl::encoding::DefaultFuchsiaResourceDialect
6203 ),
6204 forward_to_server: fidl::new_empty!(
6205 fidl::encoding::UnboundedString,
6206 fidl::encoding::DefaultFuchsiaResourceDialect
6207 ),
6208 result_variant: fidl::new_empty!(
6209 RespondWith,
6210 fidl::encoding::DefaultFuchsiaResourceDialect
6211 ),
6212 }
6213 }
6214
6215 #[inline]
6216 unsafe fn decode(
6217 &mut self,
6218 decoder: &mut fidl::encoding::Decoder<
6219 '_,
6220 fidl::encoding::DefaultFuchsiaResourceDialect,
6221 >,
6222 offset: usize,
6223 _depth: fidl::encoding::Depth,
6224 ) -> fidl::Result<()> {
6225 decoder.debug_check_bounds::<Self>(offset);
6226 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(680) };
6228 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6229 let mask = 0xffffffff00000000u64;
6230 let maskedval = padval & mask;
6231 if maskedval != 0 {
6232 return Err(fidl::Error::NonZeroPadding {
6233 padding_start: offset + 680 + ((mask as u64).trailing_zeros() / 8) as usize,
6234 });
6235 }
6236 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(704) };
6237 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6238 let mask = 0xffffffff00000000u64;
6239 let maskedval = padval & mask;
6240 if maskedval != 0 {
6241 return Err(fidl::Error::NonZeroPadding {
6242 padding_start: offset + 704 + ((mask as u64).trailing_zeros() / 8) as usize,
6243 });
6244 }
6245 fidl::decode!(
6246 ArraysStruct,
6247 fidl::encoding::DefaultFuchsiaResourceDialect,
6248 &mut self.value,
6249 decoder,
6250 offset + 0,
6251 _depth
6252 )?;
6253 fidl::decode!(
6254 DefaultEnum,
6255 fidl::encoding::DefaultFuchsiaResourceDialect,
6256 &mut self.result_err,
6257 decoder,
6258 offset + 680,
6259 _depth
6260 )?;
6261 fidl::decode!(
6262 fidl::encoding::UnboundedString,
6263 fidl::encoding::DefaultFuchsiaResourceDialect,
6264 &mut self.forward_to_server,
6265 decoder,
6266 offset + 688,
6267 _depth
6268 )?;
6269 fidl::decode!(
6270 RespondWith,
6271 fidl::encoding::DefaultFuchsiaResourceDialect,
6272 &mut self.result_variant,
6273 decoder,
6274 offset + 704,
6275 _depth
6276 )?;
6277 Ok(())
6278 }
6279 }
6280
6281 impl fidl::encoding::ResourceTypeMarker for EchoEchoEventRequest {
6282 type Borrowed<'a> = &'a mut Self;
6283 fn take_or_borrow<'a>(
6284 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6285 ) -> Self::Borrowed<'a> {
6286 value
6287 }
6288 }
6289
6290 unsafe impl fidl::encoding::TypeMarker for EchoEchoEventRequest {
6291 type Owned = Self;
6292
6293 #[inline(always)]
6294 fn inline_align(_context: fidl::encoding::Context) -> usize {
6295 8
6296 }
6297
6298 #[inline(always)]
6299 fn inline_size(_context: fidl::encoding::Context) -> usize {
6300 2912
6301 }
6302 }
6303
6304 unsafe impl
6305 fidl::encoding::Encode<EchoEchoEventRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6306 for &mut EchoEchoEventRequest
6307 {
6308 #[inline]
6309 unsafe fn encode(
6310 self,
6311 encoder: &mut fidl::encoding::Encoder<
6312 '_,
6313 fidl::encoding::DefaultFuchsiaResourceDialect,
6314 >,
6315 offset: usize,
6316 _depth: fidl::encoding::Depth,
6317 ) -> fidl::Result<()> {
6318 encoder.debug_check_bounds::<EchoEchoEventRequest>(offset);
6319 fidl::encoding::Encode::<
6321 EchoEchoEventRequest,
6322 fidl::encoding::DefaultFuchsiaResourceDialect,
6323 >::encode(
6324 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
6325 encoder,
6326 offset,
6327 _depth,
6328 )
6329 }
6330 }
6331 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
6332 fidl::encoding::Encode<EchoEchoEventRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6333 for (T0,)
6334 {
6335 #[inline]
6336 unsafe fn encode(
6337 self,
6338 encoder: &mut fidl::encoding::Encoder<
6339 '_,
6340 fidl::encoding::DefaultFuchsiaResourceDialect,
6341 >,
6342 offset: usize,
6343 depth: fidl::encoding::Depth,
6344 ) -> fidl::Result<()> {
6345 encoder.debug_check_bounds::<EchoEchoEventRequest>(offset);
6346 self.0.encode(encoder, offset + 0, depth)?;
6350 Ok(())
6351 }
6352 }
6353
6354 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6355 for EchoEchoEventRequest
6356 {
6357 #[inline(always)]
6358 fn new_empty() -> Self {
6359 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
6360 }
6361
6362 #[inline]
6363 unsafe fn decode(
6364 &mut self,
6365 decoder: &mut fidl::encoding::Decoder<
6366 '_,
6367 fidl::encoding::DefaultFuchsiaResourceDialect,
6368 >,
6369 offset: usize,
6370 _depth: fidl::encoding::Depth,
6371 ) -> fidl::Result<()> {
6372 decoder.debug_check_bounds::<Self>(offset);
6373 fidl::decode!(
6375 Struct,
6376 fidl::encoding::DefaultFuchsiaResourceDialect,
6377 &mut self.value,
6378 decoder,
6379 offset + 0,
6380 _depth
6381 )?;
6382 Ok(())
6383 }
6384 }
6385
6386 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructNoRetValRequest {
6387 type Borrowed<'a> = &'a mut Self;
6388 fn take_or_borrow<'a>(
6389 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6390 ) -> Self::Borrowed<'a> {
6391 value
6392 }
6393 }
6394
6395 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructNoRetValRequest {
6396 type Owned = Self;
6397
6398 #[inline(always)]
6399 fn inline_align(_context: fidl::encoding::Context) -> usize {
6400 8
6401 }
6402
6403 #[inline(always)]
6404 fn inline_size(_context: fidl::encoding::Context) -> usize {
6405 2928
6406 }
6407 }
6408
6409 unsafe impl
6410 fidl::encoding::Encode<
6411 EchoEchoStructNoRetValRequest,
6412 fidl::encoding::DefaultFuchsiaResourceDialect,
6413 > for &mut EchoEchoStructNoRetValRequest
6414 {
6415 #[inline]
6416 unsafe fn encode(
6417 self,
6418 encoder: &mut fidl::encoding::Encoder<
6419 '_,
6420 fidl::encoding::DefaultFuchsiaResourceDialect,
6421 >,
6422 offset: usize,
6423 _depth: fidl::encoding::Depth,
6424 ) -> fidl::Result<()> {
6425 encoder.debug_check_bounds::<EchoEchoStructNoRetValRequest>(offset);
6426 fidl::encoding::Encode::<
6428 EchoEchoStructNoRetValRequest,
6429 fidl::encoding::DefaultFuchsiaResourceDialect,
6430 >::encode(
6431 (
6432 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6433 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6434 &self.forward_to_server,
6435 ),
6436 ),
6437 encoder,
6438 offset,
6439 _depth,
6440 )
6441 }
6442 }
6443 unsafe impl<
6444 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6445 T1: fidl::encoding::Encode<
6446 fidl::encoding::UnboundedString,
6447 fidl::encoding::DefaultFuchsiaResourceDialect,
6448 >,
6449 >
6450 fidl::encoding::Encode<
6451 EchoEchoStructNoRetValRequest,
6452 fidl::encoding::DefaultFuchsiaResourceDialect,
6453 > for (T0, T1)
6454 {
6455 #[inline]
6456 unsafe fn encode(
6457 self,
6458 encoder: &mut fidl::encoding::Encoder<
6459 '_,
6460 fidl::encoding::DefaultFuchsiaResourceDialect,
6461 >,
6462 offset: usize,
6463 depth: fidl::encoding::Depth,
6464 ) -> fidl::Result<()> {
6465 encoder.debug_check_bounds::<EchoEchoStructNoRetValRequest>(offset);
6466 self.0.encode(encoder, offset + 0, depth)?;
6470 self.1.encode(encoder, offset + 2912, depth)?;
6471 Ok(())
6472 }
6473 }
6474
6475 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6476 for EchoEchoStructNoRetValRequest
6477 {
6478 #[inline(always)]
6479 fn new_empty() -> Self {
6480 Self {
6481 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6482 forward_to_server: fidl::new_empty!(
6483 fidl::encoding::UnboundedString,
6484 fidl::encoding::DefaultFuchsiaResourceDialect
6485 ),
6486 }
6487 }
6488
6489 #[inline]
6490 unsafe fn decode(
6491 &mut self,
6492 decoder: &mut fidl::encoding::Decoder<
6493 '_,
6494 fidl::encoding::DefaultFuchsiaResourceDialect,
6495 >,
6496 offset: usize,
6497 _depth: fidl::encoding::Depth,
6498 ) -> fidl::Result<()> {
6499 decoder.debug_check_bounds::<Self>(offset);
6500 fidl::decode!(
6502 Struct,
6503 fidl::encoding::DefaultFuchsiaResourceDialect,
6504 &mut self.value,
6505 decoder,
6506 offset + 0,
6507 _depth
6508 )?;
6509 fidl::decode!(
6510 fidl::encoding::UnboundedString,
6511 fidl::encoding::DefaultFuchsiaResourceDialect,
6512 &mut self.forward_to_server,
6513 decoder,
6514 offset + 2912,
6515 _depth
6516 )?;
6517 Ok(())
6518 }
6519 }
6520
6521 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructRequest {
6522 type Borrowed<'a> = &'a mut Self;
6523 fn take_or_borrow<'a>(
6524 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6525 ) -> Self::Borrowed<'a> {
6526 value
6527 }
6528 }
6529
6530 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructRequest {
6531 type Owned = Self;
6532
6533 #[inline(always)]
6534 fn inline_align(_context: fidl::encoding::Context) -> usize {
6535 8
6536 }
6537
6538 #[inline(always)]
6539 fn inline_size(_context: fidl::encoding::Context) -> usize {
6540 2928
6541 }
6542 }
6543
6544 unsafe impl
6545 fidl::encoding::Encode<EchoEchoStructRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6546 for &mut EchoEchoStructRequest
6547 {
6548 #[inline]
6549 unsafe fn encode(
6550 self,
6551 encoder: &mut fidl::encoding::Encoder<
6552 '_,
6553 fidl::encoding::DefaultFuchsiaResourceDialect,
6554 >,
6555 offset: usize,
6556 _depth: fidl::encoding::Depth,
6557 ) -> fidl::Result<()> {
6558 encoder.debug_check_bounds::<EchoEchoStructRequest>(offset);
6559 fidl::encoding::Encode::<
6561 EchoEchoStructRequest,
6562 fidl::encoding::DefaultFuchsiaResourceDialect,
6563 >::encode(
6564 (
6565 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6566 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6567 &self.forward_to_server,
6568 ),
6569 ),
6570 encoder,
6571 offset,
6572 _depth,
6573 )
6574 }
6575 }
6576 unsafe impl<
6577 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6578 T1: fidl::encoding::Encode<
6579 fidl::encoding::UnboundedString,
6580 fidl::encoding::DefaultFuchsiaResourceDialect,
6581 >,
6582 >
6583 fidl::encoding::Encode<EchoEchoStructRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6584 for (T0, T1)
6585 {
6586 #[inline]
6587 unsafe fn encode(
6588 self,
6589 encoder: &mut fidl::encoding::Encoder<
6590 '_,
6591 fidl::encoding::DefaultFuchsiaResourceDialect,
6592 >,
6593 offset: usize,
6594 depth: fidl::encoding::Depth,
6595 ) -> fidl::Result<()> {
6596 encoder.debug_check_bounds::<EchoEchoStructRequest>(offset);
6597 self.0.encode(encoder, offset + 0, depth)?;
6601 self.1.encode(encoder, offset + 2912, depth)?;
6602 Ok(())
6603 }
6604 }
6605
6606 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6607 for EchoEchoStructRequest
6608 {
6609 #[inline(always)]
6610 fn new_empty() -> Self {
6611 Self {
6612 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6613 forward_to_server: fidl::new_empty!(
6614 fidl::encoding::UnboundedString,
6615 fidl::encoding::DefaultFuchsiaResourceDialect
6616 ),
6617 }
6618 }
6619
6620 #[inline]
6621 unsafe fn decode(
6622 &mut self,
6623 decoder: &mut fidl::encoding::Decoder<
6624 '_,
6625 fidl::encoding::DefaultFuchsiaResourceDialect,
6626 >,
6627 offset: usize,
6628 _depth: fidl::encoding::Depth,
6629 ) -> fidl::Result<()> {
6630 decoder.debug_check_bounds::<Self>(offset);
6631 fidl::decode!(
6633 Struct,
6634 fidl::encoding::DefaultFuchsiaResourceDialect,
6635 &mut self.value,
6636 decoder,
6637 offset + 0,
6638 _depth
6639 )?;
6640 fidl::decode!(
6641 fidl::encoding::UnboundedString,
6642 fidl::encoding::DefaultFuchsiaResourceDialect,
6643 &mut self.forward_to_server,
6644 decoder,
6645 offset + 2912,
6646 _depth
6647 )?;
6648 Ok(())
6649 }
6650 }
6651
6652 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructResponse {
6653 type Borrowed<'a> = &'a mut Self;
6654 fn take_or_borrow<'a>(
6655 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6656 ) -> Self::Borrowed<'a> {
6657 value
6658 }
6659 }
6660
6661 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructResponse {
6662 type Owned = Self;
6663
6664 #[inline(always)]
6665 fn inline_align(_context: fidl::encoding::Context) -> usize {
6666 8
6667 }
6668
6669 #[inline(always)]
6670 fn inline_size(_context: fidl::encoding::Context) -> usize {
6671 2912
6672 }
6673 }
6674
6675 unsafe impl
6676 fidl::encoding::Encode<
6677 EchoEchoStructResponse,
6678 fidl::encoding::DefaultFuchsiaResourceDialect,
6679 > for &mut EchoEchoStructResponse
6680 {
6681 #[inline]
6682 unsafe fn encode(
6683 self,
6684 encoder: &mut fidl::encoding::Encoder<
6685 '_,
6686 fidl::encoding::DefaultFuchsiaResourceDialect,
6687 >,
6688 offset: usize,
6689 _depth: fidl::encoding::Depth,
6690 ) -> fidl::Result<()> {
6691 encoder.debug_check_bounds::<EchoEchoStructResponse>(offset);
6692 fidl::encoding::Encode::<
6694 EchoEchoStructResponse,
6695 fidl::encoding::DefaultFuchsiaResourceDialect,
6696 >::encode(
6697 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
6698 encoder,
6699 offset,
6700 _depth,
6701 )
6702 }
6703 }
6704 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
6705 fidl::encoding::Encode<
6706 EchoEchoStructResponse,
6707 fidl::encoding::DefaultFuchsiaResourceDialect,
6708 > for (T0,)
6709 {
6710 #[inline]
6711 unsafe fn encode(
6712 self,
6713 encoder: &mut fidl::encoding::Encoder<
6714 '_,
6715 fidl::encoding::DefaultFuchsiaResourceDialect,
6716 >,
6717 offset: usize,
6718 depth: fidl::encoding::Depth,
6719 ) -> fidl::Result<()> {
6720 encoder.debug_check_bounds::<EchoEchoStructResponse>(offset);
6721 self.0.encode(encoder, offset + 0, depth)?;
6725 Ok(())
6726 }
6727 }
6728
6729 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6730 for EchoEchoStructResponse
6731 {
6732 #[inline(always)]
6733 fn new_empty() -> Self {
6734 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
6735 }
6736
6737 #[inline]
6738 unsafe fn decode(
6739 &mut self,
6740 decoder: &mut fidl::encoding::Decoder<
6741 '_,
6742 fidl::encoding::DefaultFuchsiaResourceDialect,
6743 >,
6744 offset: usize,
6745 _depth: fidl::encoding::Depth,
6746 ) -> fidl::Result<()> {
6747 decoder.debug_check_bounds::<Self>(offset);
6748 fidl::decode!(
6750 Struct,
6751 fidl::encoding::DefaultFuchsiaResourceDialect,
6752 &mut self.value,
6753 decoder,
6754 offset + 0,
6755 _depth
6756 )?;
6757 Ok(())
6758 }
6759 }
6760
6761 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructWithErrorRequest {
6762 type Borrowed<'a> = &'a mut Self;
6763 fn take_or_borrow<'a>(
6764 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6765 ) -> Self::Borrowed<'a> {
6766 value
6767 }
6768 }
6769
6770 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructWithErrorRequest {
6771 type Owned = Self;
6772
6773 #[inline(always)]
6774 fn inline_align(_context: fidl::encoding::Context) -> usize {
6775 8
6776 }
6777
6778 #[inline(always)]
6779 fn inline_size(_context: fidl::encoding::Context) -> usize {
6780 2944
6781 }
6782 }
6783
6784 unsafe impl
6785 fidl::encoding::Encode<
6786 EchoEchoStructWithErrorRequest,
6787 fidl::encoding::DefaultFuchsiaResourceDialect,
6788 > for &mut EchoEchoStructWithErrorRequest
6789 {
6790 #[inline]
6791 unsafe fn encode(
6792 self,
6793 encoder: &mut fidl::encoding::Encoder<
6794 '_,
6795 fidl::encoding::DefaultFuchsiaResourceDialect,
6796 >,
6797 offset: usize,
6798 _depth: fidl::encoding::Depth,
6799 ) -> fidl::Result<()> {
6800 encoder.debug_check_bounds::<EchoEchoStructWithErrorRequest>(offset);
6801 fidl::encoding::Encode::<
6803 EchoEchoStructWithErrorRequest,
6804 fidl::encoding::DefaultFuchsiaResourceDialect,
6805 >::encode(
6806 (
6807 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6808 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
6809 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6810 &self.forward_to_server,
6811 ),
6812 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
6813 ),
6814 encoder,
6815 offset,
6816 _depth,
6817 )
6818 }
6819 }
6820 unsafe impl<
6821 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6822 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
6823 T2: fidl::encoding::Encode<
6824 fidl::encoding::UnboundedString,
6825 fidl::encoding::DefaultFuchsiaResourceDialect,
6826 >,
6827 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
6828 >
6829 fidl::encoding::Encode<
6830 EchoEchoStructWithErrorRequest,
6831 fidl::encoding::DefaultFuchsiaResourceDialect,
6832 > for (T0, T1, T2, T3)
6833 {
6834 #[inline]
6835 unsafe fn encode(
6836 self,
6837 encoder: &mut fidl::encoding::Encoder<
6838 '_,
6839 fidl::encoding::DefaultFuchsiaResourceDialect,
6840 >,
6841 offset: usize,
6842 depth: fidl::encoding::Depth,
6843 ) -> fidl::Result<()> {
6844 encoder.debug_check_bounds::<EchoEchoStructWithErrorRequest>(offset);
6845 unsafe {
6848 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2912);
6849 (ptr as *mut u64).write_unaligned(0);
6850 }
6851 unsafe {
6852 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2936);
6853 (ptr as *mut u64).write_unaligned(0);
6854 }
6855 self.0.encode(encoder, offset + 0, depth)?;
6857 self.1.encode(encoder, offset + 2912, depth)?;
6858 self.2.encode(encoder, offset + 2920, depth)?;
6859 self.3.encode(encoder, offset + 2936, depth)?;
6860 Ok(())
6861 }
6862 }
6863
6864 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6865 for EchoEchoStructWithErrorRequest
6866 {
6867 #[inline(always)]
6868 fn new_empty() -> Self {
6869 Self {
6870 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6871 result_err: fidl::new_empty!(
6872 DefaultEnum,
6873 fidl::encoding::DefaultFuchsiaResourceDialect
6874 ),
6875 forward_to_server: fidl::new_empty!(
6876 fidl::encoding::UnboundedString,
6877 fidl::encoding::DefaultFuchsiaResourceDialect
6878 ),
6879 result_variant: fidl::new_empty!(
6880 RespondWith,
6881 fidl::encoding::DefaultFuchsiaResourceDialect
6882 ),
6883 }
6884 }
6885
6886 #[inline]
6887 unsafe fn decode(
6888 &mut self,
6889 decoder: &mut fidl::encoding::Decoder<
6890 '_,
6891 fidl::encoding::DefaultFuchsiaResourceDialect,
6892 >,
6893 offset: usize,
6894 _depth: fidl::encoding::Depth,
6895 ) -> fidl::Result<()> {
6896 decoder.debug_check_bounds::<Self>(offset);
6897 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2912) };
6899 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6900 let mask = 0xffffffff00000000u64;
6901 let maskedval = padval & mask;
6902 if maskedval != 0 {
6903 return Err(fidl::Error::NonZeroPadding {
6904 padding_start: offset + 2912 + ((mask as u64).trailing_zeros() / 8) as usize,
6905 });
6906 }
6907 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2936) };
6908 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6909 let mask = 0xffffffff00000000u64;
6910 let maskedval = padval & mask;
6911 if maskedval != 0 {
6912 return Err(fidl::Error::NonZeroPadding {
6913 padding_start: offset + 2936 + ((mask as u64).trailing_zeros() / 8) as usize,
6914 });
6915 }
6916 fidl::decode!(
6917 Struct,
6918 fidl::encoding::DefaultFuchsiaResourceDialect,
6919 &mut self.value,
6920 decoder,
6921 offset + 0,
6922 _depth
6923 )?;
6924 fidl::decode!(
6925 DefaultEnum,
6926 fidl::encoding::DefaultFuchsiaResourceDialect,
6927 &mut self.result_err,
6928 decoder,
6929 offset + 2912,
6930 _depth
6931 )?;
6932 fidl::decode!(
6933 fidl::encoding::UnboundedString,
6934 fidl::encoding::DefaultFuchsiaResourceDialect,
6935 &mut self.forward_to_server,
6936 decoder,
6937 offset + 2920,
6938 _depth
6939 )?;
6940 fidl::decode!(
6941 RespondWith,
6942 fidl::encoding::DefaultFuchsiaResourceDialect,
6943 &mut self.result_variant,
6944 decoder,
6945 offset + 2936,
6946 _depth
6947 )?;
6948 Ok(())
6949 }
6950 }
6951
6952 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableRequest {
6953 type Borrowed<'a> = &'a mut Self;
6954 fn take_or_borrow<'a>(
6955 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6956 ) -> Self::Borrowed<'a> {
6957 value
6958 }
6959 }
6960
6961 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableRequest {
6962 type Owned = Self;
6963
6964 #[inline(always)]
6965 fn inline_align(_context: fidl::encoding::Context) -> usize {
6966 8
6967 }
6968
6969 #[inline(always)]
6970 fn inline_size(_context: fidl::encoding::Context) -> usize {
6971 32
6972 }
6973 }
6974
6975 unsafe impl
6976 fidl::encoding::Encode<EchoEchoTableRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6977 for &mut EchoEchoTableRequest
6978 {
6979 #[inline]
6980 unsafe fn encode(
6981 self,
6982 encoder: &mut fidl::encoding::Encoder<
6983 '_,
6984 fidl::encoding::DefaultFuchsiaResourceDialect,
6985 >,
6986 offset: usize,
6987 _depth: fidl::encoding::Depth,
6988 ) -> fidl::Result<()> {
6989 encoder.debug_check_bounds::<EchoEchoTableRequest>(offset);
6990 fidl::encoding::Encode::<
6992 EchoEchoTableRequest,
6993 fidl::encoding::DefaultFuchsiaResourceDialect,
6994 >::encode(
6995 (
6996 <AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6997 &mut self.value,
6998 ),
6999 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7000 &self.forward_to_server,
7001 ),
7002 ),
7003 encoder,
7004 offset,
7005 _depth,
7006 )
7007 }
7008 }
7009 unsafe impl<
7010 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7011 T1: fidl::encoding::Encode<
7012 fidl::encoding::UnboundedString,
7013 fidl::encoding::DefaultFuchsiaResourceDialect,
7014 >,
7015 >
7016 fidl::encoding::Encode<EchoEchoTableRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
7017 for (T0, T1)
7018 {
7019 #[inline]
7020 unsafe fn encode(
7021 self,
7022 encoder: &mut fidl::encoding::Encoder<
7023 '_,
7024 fidl::encoding::DefaultFuchsiaResourceDialect,
7025 >,
7026 offset: usize,
7027 depth: fidl::encoding::Depth,
7028 ) -> fidl::Result<()> {
7029 encoder.debug_check_bounds::<EchoEchoTableRequest>(offset);
7030 self.0.encode(encoder, offset + 0, depth)?;
7034 self.1.encode(encoder, offset + 16, depth)?;
7035 Ok(())
7036 }
7037 }
7038
7039 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7040 for EchoEchoTableRequest
7041 {
7042 #[inline(always)]
7043 fn new_empty() -> Self {
7044 Self {
7045 value: fidl::new_empty!(
7046 AllTypesTable,
7047 fidl::encoding::DefaultFuchsiaResourceDialect
7048 ),
7049 forward_to_server: fidl::new_empty!(
7050 fidl::encoding::UnboundedString,
7051 fidl::encoding::DefaultFuchsiaResourceDialect
7052 ),
7053 }
7054 }
7055
7056 #[inline]
7057 unsafe fn decode(
7058 &mut self,
7059 decoder: &mut fidl::encoding::Decoder<
7060 '_,
7061 fidl::encoding::DefaultFuchsiaResourceDialect,
7062 >,
7063 offset: usize,
7064 _depth: fidl::encoding::Depth,
7065 ) -> fidl::Result<()> {
7066 decoder.debug_check_bounds::<Self>(offset);
7067 fidl::decode!(
7069 AllTypesTable,
7070 fidl::encoding::DefaultFuchsiaResourceDialect,
7071 &mut self.value,
7072 decoder,
7073 offset + 0,
7074 _depth
7075 )?;
7076 fidl::decode!(
7077 fidl::encoding::UnboundedString,
7078 fidl::encoding::DefaultFuchsiaResourceDialect,
7079 &mut self.forward_to_server,
7080 decoder,
7081 offset + 16,
7082 _depth
7083 )?;
7084 Ok(())
7085 }
7086 }
7087
7088 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableResponse {
7089 type Borrowed<'a> = &'a mut Self;
7090 fn take_or_borrow<'a>(
7091 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7092 ) -> Self::Borrowed<'a> {
7093 value
7094 }
7095 }
7096
7097 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableResponse {
7098 type Owned = Self;
7099
7100 #[inline(always)]
7101 fn inline_align(_context: fidl::encoding::Context) -> usize {
7102 8
7103 }
7104
7105 #[inline(always)]
7106 fn inline_size(_context: fidl::encoding::Context) -> usize {
7107 16
7108 }
7109 }
7110
7111 unsafe impl
7112 fidl::encoding::Encode<EchoEchoTableResponse, fidl::encoding::DefaultFuchsiaResourceDialect>
7113 for &mut EchoEchoTableResponse
7114 {
7115 #[inline]
7116 unsafe fn encode(
7117 self,
7118 encoder: &mut fidl::encoding::Encoder<
7119 '_,
7120 fidl::encoding::DefaultFuchsiaResourceDialect,
7121 >,
7122 offset: usize,
7123 _depth: fidl::encoding::Depth,
7124 ) -> fidl::Result<()> {
7125 encoder.debug_check_bounds::<EchoEchoTableResponse>(offset);
7126 fidl::encoding::Encode::<
7128 EchoEchoTableResponse,
7129 fidl::encoding::DefaultFuchsiaResourceDialect,
7130 >::encode(
7131 (<AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7132 &mut self.value,
7133 ),),
7134 encoder,
7135 offset,
7136 _depth,
7137 )
7138 }
7139 }
7140 unsafe impl<
7141 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7142 >
7143 fidl::encoding::Encode<EchoEchoTableResponse, fidl::encoding::DefaultFuchsiaResourceDialect>
7144 for (T0,)
7145 {
7146 #[inline]
7147 unsafe fn encode(
7148 self,
7149 encoder: &mut fidl::encoding::Encoder<
7150 '_,
7151 fidl::encoding::DefaultFuchsiaResourceDialect,
7152 >,
7153 offset: usize,
7154 depth: fidl::encoding::Depth,
7155 ) -> fidl::Result<()> {
7156 encoder.debug_check_bounds::<EchoEchoTableResponse>(offset);
7157 self.0.encode(encoder, offset + 0, depth)?;
7161 Ok(())
7162 }
7163 }
7164
7165 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7166 for EchoEchoTableResponse
7167 {
7168 #[inline(always)]
7169 fn new_empty() -> Self {
7170 Self {
7171 value: fidl::new_empty!(
7172 AllTypesTable,
7173 fidl::encoding::DefaultFuchsiaResourceDialect
7174 ),
7175 }
7176 }
7177
7178 #[inline]
7179 unsafe fn decode(
7180 &mut self,
7181 decoder: &mut fidl::encoding::Decoder<
7182 '_,
7183 fidl::encoding::DefaultFuchsiaResourceDialect,
7184 >,
7185 offset: usize,
7186 _depth: fidl::encoding::Depth,
7187 ) -> fidl::Result<()> {
7188 decoder.debug_check_bounds::<Self>(offset);
7189 fidl::decode!(
7191 AllTypesTable,
7192 fidl::encoding::DefaultFuchsiaResourceDialect,
7193 &mut self.value,
7194 decoder,
7195 offset + 0,
7196 _depth
7197 )?;
7198 Ok(())
7199 }
7200 }
7201
7202 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableWithErrorRequest {
7203 type Borrowed<'a> = &'a mut Self;
7204 fn take_or_borrow<'a>(
7205 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7206 ) -> Self::Borrowed<'a> {
7207 value
7208 }
7209 }
7210
7211 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableWithErrorRequest {
7212 type Owned = Self;
7213
7214 #[inline(always)]
7215 fn inline_align(_context: fidl::encoding::Context) -> usize {
7216 8
7217 }
7218
7219 #[inline(always)]
7220 fn inline_size(_context: fidl::encoding::Context) -> usize {
7221 48
7222 }
7223 }
7224
7225 unsafe impl
7226 fidl::encoding::Encode<
7227 EchoEchoTableWithErrorRequest,
7228 fidl::encoding::DefaultFuchsiaResourceDialect,
7229 > for &mut EchoEchoTableWithErrorRequest
7230 {
7231 #[inline]
7232 unsafe fn encode(
7233 self,
7234 encoder: &mut fidl::encoding::Encoder<
7235 '_,
7236 fidl::encoding::DefaultFuchsiaResourceDialect,
7237 >,
7238 offset: usize,
7239 _depth: fidl::encoding::Depth,
7240 ) -> fidl::Result<()> {
7241 encoder.debug_check_bounds::<EchoEchoTableWithErrorRequest>(offset);
7242 fidl::encoding::Encode::<
7244 EchoEchoTableWithErrorRequest,
7245 fidl::encoding::DefaultFuchsiaResourceDialect,
7246 >::encode(
7247 (
7248 <AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7249 &mut self.value,
7250 ),
7251 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
7252 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7253 &self.forward_to_server,
7254 ),
7255 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
7256 ),
7257 encoder,
7258 offset,
7259 _depth,
7260 )
7261 }
7262 }
7263 unsafe impl<
7264 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7265 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
7266 T2: fidl::encoding::Encode<
7267 fidl::encoding::UnboundedString,
7268 fidl::encoding::DefaultFuchsiaResourceDialect,
7269 >,
7270 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
7271 >
7272 fidl::encoding::Encode<
7273 EchoEchoTableWithErrorRequest,
7274 fidl::encoding::DefaultFuchsiaResourceDialect,
7275 > for (T0, T1, T2, T3)
7276 {
7277 #[inline]
7278 unsafe fn encode(
7279 self,
7280 encoder: &mut fidl::encoding::Encoder<
7281 '_,
7282 fidl::encoding::DefaultFuchsiaResourceDialect,
7283 >,
7284 offset: usize,
7285 depth: fidl::encoding::Depth,
7286 ) -> fidl::Result<()> {
7287 encoder.debug_check_bounds::<EchoEchoTableWithErrorRequest>(offset);
7288 unsafe {
7291 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
7292 (ptr as *mut u64).write_unaligned(0);
7293 }
7294 unsafe {
7295 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(40);
7296 (ptr as *mut u64).write_unaligned(0);
7297 }
7298 self.0.encode(encoder, offset + 0, depth)?;
7300 self.1.encode(encoder, offset + 16, depth)?;
7301 self.2.encode(encoder, offset + 24, depth)?;
7302 self.3.encode(encoder, offset + 40, depth)?;
7303 Ok(())
7304 }
7305 }
7306
7307 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7308 for EchoEchoTableWithErrorRequest
7309 {
7310 #[inline(always)]
7311 fn new_empty() -> Self {
7312 Self {
7313 value: fidl::new_empty!(
7314 AllTypesTable,
7315 fidl::encoding::DefaultFuchsiaResourceDialect
7316 ),
7317 result_err: fidl::new_empty!(
7318 DefaultEnum,
7319 fidl::encoding::DefaultFuchsiaResourceDialect
7320 ),
7321 forward_to_server: fidl::new_empty!(
7322 fidl::encoding::UnboundedString,
7323 fidl::encoding::DefaultFuchsiaResourceDialect
7324 ),
7325 result_variant: fidl::new_empty!(
7326 RespondWith,
7327 fidl::encoding::DefaultFuchsiaResourceDialect
7328 ),
7329 }
7330 }
7331
7332 #[inline]
7333 unsafe fn decode(
7334 &mut self,
7335 decoder: &mut fidl::encoding::Decoder<
7336 '_,
7337 fidl::encoding::DefaultFuchsiaResourceDialect,
7338 >,
7339 offset: usize,
7340 _depth: fidl::encoding::Depth,
7341 ) -> fidl::Result<()> {
7342 decoder.debug_check_bounds::<Self>(offset);
7343 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
7345 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7346 let mask = 0xffffffff00000000u64;
7347 let maskedval = padval & mask;
7348 if maskedval != 0 {
7349 return Err(fidl::Error::NonZeroPadding {
7350 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
7351 });
7352 }
7353 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(40) };
7354 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7355 let mask = 0xffffffff00000000u64;
7356 let maskedval = padval & mask;
7357 if maskedval != 0 {
7358 return Err(fidl::Error::NonZeroPadding {
7359 padding_start: offset + 40 + ((mask as u64).trailing_zeros() / 8) as usize,
7360 });
7361 }
7362 fidl::decode!(
7363 AllTypesTable,
7364 fidl::encoding::DefaultFuchsiaResourceDialect,
7365 &mut self.value,
7366 decoder,
7367 offset + 0,
7368 _depth
7369 )?;
7370 fidl::decode!(
7371 DefaultEnum,
7372 fidl::encoding::DefaultFuchsiaResourceDialect,
7373 &mut self.result_err,
7374 decoder,
7375 offset + 16,
7376 _depth
7377 )?;
7378 fidl::decode!(
7379 fidl::encoding::UnboundedString,
7380 fidl::encoding::DefaultFuchsiaResourceDialect,
7381 &mut self.forward_to_server,
7382 decoder,
7383 offset + 24,
7384 _depth
7385 )?;
7386 fidl::decode!(
7387 RespondWith,
7388 fidl::encoding::DefaultFuchsiaResourceDialect,
7389 &mut self.result_variant,
7390 decoder,
7391 offset + 40,
7392 _depth
7393 )?;
7394 Ok(())
7395 }
7396 }
7397
7398 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsRequest {
7399 type Borrowed<'a> = &'a mut Self;
7400 fn take_or_borrow<'a>(
7401 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7402 ) -> Self::Borrowed<'a> {
7403 value
7404 }
7405 }
7406
7407 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsRequest {
7408 type Owned = Self;
7409
7410 #[inline(always)]
7411 fn inline_align(_context: fidl::encoding::Context) -> usize {
7412 8
7413 }
7414
7415 #[inline(always)]
7416 fn inline_size(_context: fidl::encoding::Context) -> usize {
7417 432
7418 }
7419 }
7420
7421 unsafe impl
7422 fidl::encoding::Encode<
7423 EchoEchoVectorsRequest,
7424 fidl::encoding::DefaultFuchsiaResourceDialect,
7425 > for &mut EchoEchoVectorsRequest
7426 {
7427 #[inline]
7428 unsafe fn encode(
7429 self,
7430 encoder: &mut fidl::encoding::Encoder<
7431 '_,
7432 fidl::encoding::DefaultFuchsiaResourceDialect,
7433 >,
7434 offset: usize,
7435 _depth: fidl::encoding::Depth,
7436 ) -> fidl::Result<()> {
7437 encoder.debug_check_bounds::<EchoEchoVectorsRequest>(offset);
7438 fidl::encoding::Encode::<
7440 EchoEchoVectorsRequest,
7441 fidl::encoding::DefaultFuchsiaResourceDialect,
7442 >::encode(
7443 (
7444 <VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7445 &mut self.value,
7446 ),
7447 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7448 &self.forward_to_server,
7449 ),
7450 ),
7451 encoder,
7452 offset,
7453 _depth,
7454 )
7455 }
7456 }
7457 unsafe impl<
7458 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7459 T1: fidl::encoding::Encode<
7460 fidl::encoding::UnboundedString,
7461 fidl::encoding::DefaultFuchsiaResourceDialect,
7462 >,
7463 >
7464 fidl::encoding::Encode<
7465 EchoEchoVectorsRequest,
7466 fidl::encoding::DefaultFuchsiaResourceDialect,
7467 > for (T0, T1)
7468 {
7469 #[inline]
7470 unsafe fn encode(
7471 self,
7472 encoder: &mut fidl::encoding::Encoder<
7473 '_,
7474 fidl::encoding::DefaultFuchsiaResourceDialect,
7475 >,
7476 offset: usize,
7477 depth: fidl::encoding::Depth,
7478 ) -> fidl::Result<()> {
7479 encoder.debug_check_bounds::<EchoEchoVectorsRequest>(offset);
7480 self.0.encode(encoder, offset + 0, depth)?;
7484 self.1.encode(encoder, offset + 416, depth)?;
7485 Ok(())
7486 }
7487 }
7488
7489 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7490 for EchoEchoVectorsRequest
7491 {
7492 #[inline(always)]
7493 fn new_empty() -> Self {
7494 Self {
7495 value: fidl::new_empty!(
7496 VectorsStruct,
7497 fidl::encoding::DefaultFuchsiaResourceDialect
7498 ),
7499 forward_to_server: fidl::new_empty!(
7500 fidl::encoding::UnboundedString,
7501 fidl::encoding::DefaultFuchsiaResourceDialect
7502 ),
7503 }
7504 }
7505
7506 #[inline]
7507 unsafe fn decode(
7508 &mut self,
7509 decoder: &mut fidl::encoding::Decoder<
7510 '_,
7511 fidl::encoding::DefaultFuchsiaResourceDialect,
7512 >,
7513 offset: usize,
7514 _depth: fidl::encoding::Depth,
7515 ) -> fidl::Result<()> {
7516 decoder.debug_check_bounds::<Self>(offset);
7517 fidl::decode!(
7519 VectorsStruct,
7520 fidl::encoding::DefaultFuchsiaResourceDialect,
7521 &mut self.value,
7522 decoder,
7523 offset + 0,
7524 _depth
7525 )?;
7526 fidl::decode!(
7527 fidl::encoding::UnboundedString,
7528 fidl::encoding::DefaultFuchsiaResourceDialect,
7529 &mut self.forward_to_server,
7530 decoder,
7531 offset + 416,
7532 _depth
7533 )?;
7534 Ok(())
7535 }
7536 }
7537
7538 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsResponse {
7539 type Borrowed<'a> = &'a mut Self;
7540 fn take_or_borrow<'a>(
7541 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7542 ) -> Self::Borrowed<'a> {
7543 value
7544 }
7545 }
7546
7547 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsResponse {
7548 type Owned = Self;
7549
7550 #[inline(always)]
7551 fn inline_align(_context: fidl::encoding::Context) -> usize {
7552 8
7553 }
7554
7555 #[inline(always)]
7556 fn inline_size(_context: fidl::encoding::Context) -> usize {
7557 416
7558 }
7559 }
7560
7561 unsafe impl
7562 fidl::encoding::Encode<
7563 EchoEchoVectorsResponse,
7564 fidl::encoding::DefaultFuchsiaResourceDialect,
7565 > for &mut EchoEchoVectorsResponse
7566 {
7567 #[inline]
7568 unsafe fn encode(
7569 self,
7570 encoder: &mut fidl::encoding::Encoder<
7571 '_,
7572 fidl::encoding::DefaultFuchsiaResourceDialect,
7573 >,
7574 offset: usize,
7575 _depth: fidl::encoding::Depth,
7576 ) -> fidl::Result<()> {
7577 encoder.debug_check_bounds::<EchoEchoVectorsResponse>(offset);
7578 fidl::encoding::Encode::<
7580 EchoEchoVectorsResponse,
7581 fidl::encoding::DefaultFuchsiaResourceDialect,
7582 >::encode(
7583 (<VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7584 &mut self.value,
7585 ),),
7586 encoder,
7587 offset,
7588 _depth,
7589 )
7590 }
7591 }
7592 unsafe impl<
7593 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7594 >
7595 fidl::encoding::Encode<
7596 EchoEchoVectorsResponse,
7597 fidl::encoding::DefaultFuchsiaResourceDialect,
7598 > for (T0,)
7599 {
7600 #[inline]
7601 unsafe fn encode(
7602 self,
7603 encoder: &mut fidl::encoding::Encoder<
7604 '_,
7605 fidl::encoding::DefaultFuchsiaResourceDialect,
7606 >,
7607 offset: usize,
7608 depth: fidl::encoding::Depth,
7609 ) -> fidl::Result<()> {
7610 encoder.debug_check_bounds::<EchoEchoVectorsResponse>(offset);
7611 self.0.encode(encoder, offset + 0, depth)?;
7615 Ok(())
7616 }
7617 }
7618
7619 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7620 for EchoEchoVectorsResponse
7621 {
7622 #[inline(always)]
7623 fn new_empty() -> Self {
7624 Self {
7625 value: fidl::new_empty!(
7626 VectorsStruct,
7627 fidl::encoding::DefaultFuchsiaResourceDialect
7628 ),
7629 }
7630 }
7631
7632 #[inline]
7633 unsafe fn decode(
7634 &mut self,
7635 decoder: &mut fidl::encoding::Decoder<
7636 '_,
7637 fidl::encoding::DefaultFuchsiaResourceDialect,
7638 >,
7639 offset: usize,
7640 _depth: fidl::encoding::Depth,
7641 ) -> fidl::Result<()> {
7642 decoder.debug_check_bounds::<Self>(offset);
7643 fidl::decode!(
7645 VectorsStruct,
7646 fidl::encoding::DefaultFuchsiaResourceDialect,
7647 &mut self.value,
7648 decoder,
7649 offset + 0,
7650 _depth
7651 )?;
7652 Ok(())
7653 }
7654 }
7655
7656 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsWithErrorRequest {
7657 type Borrowed<'a> = &'a mut Self;
7658 fn take_or_borrow<'a>(
7659 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7660 ) -> Self::Borrowed<'a> {
7661 value
7662 }
7663 }
7664
7665 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsWithErrorRequest {
7666 type Owned = Self;
7667
7668 #[inline(always)]
7669 fn inline_align(_context: fidl::encoding::Context) -> usize {
7670 8
7671 }
7672
7673 #[inline(always)]
7674 fn inline_size(_context: fidl::encoding::Context) -> usize {
7675 448
7676 }
7677 }
7678
7679 unsafe impl
7680 fidl::encoding::Encode<
7681 EchoEchoVectorsWithErrorRequest,
7682 fidl::encoding::DefaultFuchsiaResourceDialect,
7683 > for &mut EchoEchoVectorsWithErrorRequest
7684 {
7685 #[inline]
7686 unsafe fn encode(
7687 self,
7688 encoder: &mut fidl::encoding::Encoder<
7689 '_,
7690 fidl::encoding::DefaultFuchsiaResourceDialect,
7691 >,
7692 offset: usize,
7693 _depth: fidl::encoding::Depth,
7694 ) -> fidl::Result<()> {
7695 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorRequest>(offset);
7696 fidl::encoding::Encode::<
7698 EchoEchoVectorsWithErrorRequest,
7699 fidl::encoding::DefaultFuchsiaResourceDialect,
7700 >::encode(
7701 (
7702 <VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7703 &mut self.value,
7704 ),
7705 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
7706 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7707 &self.forward_to_server,
7708 ),
7709 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
7710 ),
7711 encoder,
7712 offset,
7713 _depth,
7714 )
7715 }
7716 }
7717 unsafe impl<
7718 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7719 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
7720 T2: fidl::encoding::Encode<
7721 fidl::encoding::UnboundedString,
7722 fidl::encoding::DefaultFuchsiaResourceDialect,
7723 >,
7724 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
7725 >
7726 fidl::encoding::Encode<
7727 EchoEchoVectorsWithErrorRequest,
7728 fidl::encoding::DefaultFuchsiaResourceDialect,
7729 > for (T0, T1, T2, T3)
7730 {
7731 #[inline]
7732 unsafe fn encode(
7733 self,
7734 encoder: &mut fidl::encoding::Encoder<
7735 '_,
7736 fidl::encoding::DefaultFuchsiaResourceDialect,
7737 >,
7738 offset: usize,
7739 depth: fidl::encoding::Depth,
7740 ) -> fidl::Result<()> {
7741 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorRequest>(offset);
7742 unsafe {
7745 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(416);
7746 (ptr as *mut u64).write_unaligned(0);
7747 }
7748 unsafe {
7749 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(440);
7750 (ptr as *mut u64).write_unaligned(0);
7751 }
7752 self.0.encode(encoder, offset + 0, depth)?;
7754 self.1.encode(encoder, offset + 416, depth)?;
7755 self.2.encode(encoder, offset + 424, depth)?;
7756 self.3.encode(encoder, offset + 440, depth)?;
7757 Ok(())
7758 }
7759 }
7760
7761 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7762 for EchoEchoVectorsWithErrorRequest
7763 {
7764 #[inline(always)]
7765 fn new_empty() -> Self {
7766 Self {
7767 value: fidl::new_empty!(
7768 VectorsStruct,
7769 fidl::encoding::DefaultFuchsiaResourceDialect
7770 ),
7771 result_err: fidl::new_empty!(
7772 DefaultEnum,
7773 fidl::encoding::DefaultFuchsiaResourceDialect
7774 ),
7775 forward_to_server: fidl::new_empty!(
7776 fidl::encoding::UnboundedString,
7777 fidl::encoding::DefaultFuchsiaResourceDialect
7778 ),
7779 result_variant: fidl::new_empty!(
7780 RespondWith,
7781 fidl::encoding::DefaultFuchsiaResourceDialect
7782 ),
7783 }
7784 }
7785
7786 #[inline]
7787 unsafe fn decode(
7788 &mut self,
7789 decoder: &mut fidl::encoding::Decoder<
7790 '_,
7791 fidl::encoding::DefaultFuchsiaResourceDialect,
7792 >,
7793 offset: usize,
7794 _depth: fidl::encoding::Depth,
7795 ) -> fidl::Result<()> {
7796 decoder.debug_check_bounds::<Self>(offset);
7797 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(416) };
7799 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7800 let mask = 0xffffffff00000000u64;
7801 let maskedval = padval & mask;
7802 if maskedval != 0 {
7803 return Err(fidl::Error::NonZeroPadding {
7804 padding_start: offset + 416 + ((mask as u64).trailing_zeros() / 8) as usize,
7805 });
7806 }
7807 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(440) };
7808 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7809 let mask = 0xffffffff00000000u64;
7810 let maskedval = padval & mask;
7811 if maskedval != 0 {
7812 return Err(fidl::Error::NonZeroPadding {
7813 padding_start: offset + 440 + ((mask as u64).trailing_zeros() / 8) as usize,
7814 });
7815 }
7816 fidl::decode!(
7817 VectorsStruct,
7818 fidl::encoding::DefaultFuchsiaResourceDialect,
7819 &mut self.value,
7820 decoder,
7821 offset + 0,
7822 _depth
7823 )?;
7824 fidl::decode!(
7825 DefaultEnum,
7826 fidl::encoding::DefaultFuchsiaResourceDialect,
7827 &mut self.result_err,
7828 decoder,
7829 offset + 416,
7830 _depth
7831 )?;
7832 fidl::decode!(
7833 fidl::encoding::UnboundedString,
7834 fidl::encoding::DefaultFuchsiaResourceDialect,
7835 &mut self.forward_to_server,
7836 decoder,
7837 offset + 424,
7838 _depth
7839 )?;
7840 fidl::decode!(
7841 RespondWith,
7842 fidl::encoding::DefaultFuchsiaResourceDialect,
7843 &mut self.result_variant,
7844 decoder,
7845 offset + 440,
7846 _depth
7847 )?;
7848 Ok(())
7849 }
7850 }
7851
7852 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsRequest {
7853 type Borrowed<'a> = &'a mut Self;
7854 fn take_or_borrow<'a>(
7855 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7856 ) -> Self::Borrowed<'a> {
7857 value
7858 }
7859 }
7860
7861 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsRequest {
7862 type Owned = Self;
7863
7864 #[inline(always)]
7865 fn inline_align(_context: fidl::encoding::Context) -> usize {
7866 8
7867 }
7868
7869 #[inline(always)]
7870 fn inline_size(_context: fidl::encoding::Context) -> usize {
7871 32
7872 }
7873 }
7874
7875 unsafe impl
7876 fidl::encoding::Encode<
7877 EchoEchoXunionsRequest,
7878 fidl::encoding::DefaultFuchsiaResourceDialect,
7879 > for &mut EchoEchoXunionsRequest
7880 {
7881 #[inline]
7882 unsafe fn encode(
7883 self,
7884 encoder: &mut fidl::encoding::Encoder<
7885 '_,
7886 fidl::encoding::DefaultFuchsiaResourceDialect,
7887 >,
7888 offset: usize,
7889 _depth: fidl::encoding::Depth,
7890 ) -> fidl::Result<()> {
7891 encoder.debug_check_bounds::<EchoEchoXunionsRequest>(offset);
7892 fidl::encoding::Encode::<EchoEchoXunionsRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
7894 (
7895 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
7896 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(&self.forward_to_server),
7897 ),
7898 encoder, offset, _depth
7899 )
7900 }
7901 }
7902 unsafe impl<
7903 T0: fidl::encoding::Encode<
7904 fidl::encoding::UnboundedVector<AllTypesXunion>,
7905 fidl::encoding::DefaultFuchsiaResourceDialect,
7906 >,
7907 T1: fidl::encoding::Encode<
7908 fidl::encoding::UnboundedString,
7909 fidl::encoding::DefaultFuchsiaResourceDialect,
7910 >,
7911 >
7912 fidl::encoding::Encode<
7913 EchoEchoXunionsRequest,
7914 fidl::encoding::DefaultFuchsiaResourceDialect,
7915 > for (T0, T1)
7916 {
7917 #[inline]
7918 unsafe fn encode(
7919 self,
7920 encoder: &mut fidl::encoding::Encoder<
7921 '_,
7922 fidl::encoding::DefaultFuchsiaResourceDialect,
7923 >,
7924 offset: usize,
7925 depth: fidl::encoding::Depth,
7926 ) -> fidl::Result<()> {
7927 encoder.debug_check_bounds::<EchoEchoXunionsRequest>(offset);
7928 self.0.encode(encoder, offset + 0, depth)?;
7932 self.1.encode(encoder, offset + 16, depth)?;
7933 Ok(())
7934 }
7935 }
7936
7937 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7938 for EchoEchoXunionsRequest
7939 {
7940 #[inline(always)]
7941 fn new_empty() -> Self {
7942 Self {
7943 value: fidl::new_empty!(
7944 fidl::encoding::UnboundedVector<AllTypesXunion>,
7945 fidl::encoding::DefaultFuchsiaResourceDialect
7946 ),
7947 forward_to_server: fidl::new_empty!(
7948 fidl::encoding::UnboundedString,
7949 fidl::encoding::DefaultFuchsiaResourceDialect
7950 ),
7951 }
7952 }
7953
7954 #[inline]
7955 unsafe fn decode(
7956 &mut self,
7957 decoder: &mut fidl::encoding::Decoder<
7958 '_,
7959 fidl::encoding::DefaultFuchsiaResourceDialect,
7960 >,
7961 offset: usize,
7962 _depth: fidl::encoding::Depth,
7963 ) -> fidl::Result<()> {
7964 decoder.debug_check_bounds::<Self>(offset);
7965 fidl::decode!(
7967 fidl::encoding::UnboundedVector<AllTypesXunion>,
7968 fidl::encoding::DefaultFuchsiaResourceDialect,
7969 &mut self.value,
7970 decoder,
7971 offset + 0,
7972 _depth
7973 )?;
7974 fidl::decode!(
7975 fidl::encoding::UnboundedString,
7976 fidl::encoding::DefaultFuchsiaResourceDialect,
7977 &mut self.forward_to_server,
7978 decoder,
7979 offset + 16,
7980 _depth
7981 )?;
7982 Ok(())
7983 }
7984 }
7985
7986 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsResponse {
7987 type Borrowed<'a> = &'a mut Self;
7988 fn take_or_borrow<'a>(
7989 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7990 ) -> Self::Borrowed<'a> {
7991 value
7992 }
7993 }
7994
7995 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsResponse {
7996 type Owned = Self;
7997
7998 #[inline(always)]
7999 fn inline_align(_context: fidl::encoding::Context) -> usize {
8000 8
8001 }
8002
8003 #[inline(always)]
8004 fn inline_size(_context: fidl::encoding::Context) -> usize {
8005 16
8006 }
8007 }
8008
8009 unsafe impl
8010 fidl::encoding::Encode<
8011 EchoEchoXunionsResponse,
8012 fidl::encoding::DefaultFuchsiaResourceDialect,
8013 > for &mut EchoEchoXunionsResponse
8014 {
8015 #[inline]
8016 unsafe fn encode(
8017 self,
8018 encoder: &mut fidl::encoding::Encoder<
8019 '_,
8020 fidl::encoding::DefaultFuchsiaResourceDialect,
8021 >,
8022 offset: usize,
8023 _depth: fidl::encoding::Depth,
8024 ) -> fidl::Result<()> {
8025 encoder.debug_check_bounds::<EchoEchoXunionsResponse>(offset);
8026 fidl::encoding::Encode::<EchoEchoXunionsResponse, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8028 (
8029 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8030 ),
8031 encoder, offset, _depth
8032 )
8033 }
8034 }
8035 unsafe impl<
8036 T0: fidl::encoding::Encode<
8037 fidl::encoding::UnboundedVector<AllTypesXunion>,
8038 fidl::encoding::DefaultFuchsiaResourceDialect,
8039 >,
8040 >
8041 fidl::encoding::Encode<
8042 EchoEchoXunionsResponse,
8043 fidl::encoding::DefaultFuchsiaResourceDialect,
8044 > for (T0,)
8045 {
8046 #[inline]
8047 unsafe fn encode(
8048 self,
8049 encoder: &mut fidl::encoding::Encoder<
8050 '_,
8051 fidl::encoding::DefaultFuchsiaResourceDialect,
8052 >,
8053 offset: usize,
8054 depth: fidl::encoding::Depth,
8055 ) -> fidl::Result<()> {
8056 encoder.debug_check_bounds::<EchoEchoXunionsResponse>(offset);
8057 self.0.encode(encoder, offset + 0, depth)?;
8061 Ok(())
8062 }
8063 }
8064
8065 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8066 for EchoEchoXunionsResponse
8067 {
8068 #[inline(always)]
8069 fn new_empty() -> Self {
8070 Self {
8071 value: fidl::new_empty!(
8072 fidl::encoding::UnboundedVector<AllTypesXunion>,
8073 fidl::encoding::DefaultFuchsiaResourceDialect
8074 ),
8075 }
8076 }
8077
8078 #[inline]
8079 unsafe fn decode(
8080 &mut self,
8081 decoder: &mut fidl::encoding::Decoder<
8082 '_,
8083 fidl::encoding::DefaultFuchsiaResourceDialect,
8084 >,
8085 offset: usize,
8086 _depth: fidl::encoding::Depth,
8087 ) -> fidl::Result<()> {
8088 decoder.debug_check_bounds::<Self>(offset);
8089 fidl::decode!(
8091 fidl::encoding::UnboundedVector<AllTypesXunion>,
8092 fidl::encoding::DefaultFuchsiaResourceDialect,
8093 &mut self.value,
8094 decoder,
8095 offset + 0,
8096 _depth
8097 )?;
8098 Ok(())
8099 }
8100 }
8101
8102 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsWithErrorRequest {
8103 type Borrowed<'a> = &'a mut Self;
8104 fn take_or_borrow<'a>(
8105 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8106 ) -> Self::Borrowed<'a> {
8107 value
8108 }
8109 }
8110
8111 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsWithErrorRequest {
8112 type Owned = Self;
8113
8114 #[inline(always)]
8115 fn inline_align(_context: fidl::encoding::Context) -> usize {
8116 8
8117 }
8118
8119 #[inline(always)]
8120 fn inline_size(_context: fidl::encoding::Context) -> usize {
8121 48
8122 }
8123 }
8124
8125 unsafe impl
8126 fidl::encoding::Encode<
8127 EchoEchoXunionsWithErrorRequest,
8128 fidl::encoding::DefaultFuchsiaResourceDialect,
8129 > for &mut EchoEchoXunionsWithErrorRequest
8130 {
8131 #[inline]
8132 unsafe fn encode(
8133 self,
8134 encoder: &mut fidl::encoding::Encoder<
8135 '_,
8136 fidl::encoding::DefaultFuchsiaResourceDialect,
8137 >,
8138 offset: usize,
8139 _depth: fidl::encoding::Depth,
8140 ) -> fidl::Result<()> {
8141 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorRequest>(offset);
8142 fidl::encoding::Encode::<EchoEchoXunionsWithErrorRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8144 (
8145 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8146 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
8147 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(&self.forward_to_server),
8148 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
8149 ),
8150 encoder, offset, _depth
8151 )
8152 }
8153 }
8154 unsafe impl<
8155 T0: fidl::encoding::Encode<
8156 fidl::encoding::UnboundedVector<AllTypesXunion>,
8157 fidl::encoding::DefaultFuchsiaResourceDialect,
8158 >,
8159 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8160 T2: fidl::encoding::Encode<
8161 fidl::encoding::UnboundedString,
8162 fidl::encoding::DefaultFuchsiaResourceDialect,
8163 >,
8164 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
8165 >
8166 fidl::encoding::Encode<
8167 EchoEchoXunionsWithErrorRequest,
8168 fidl::encoding::DefaultFuchsiaResourceDialect,
8169 > for (T0, T1, T2, T3)
8170 {
8171 #[inline]
8172 unsafe fn encode(
8173 self,
8174 encoder: &mut fidl::encoding::Encoder<
8175 '_,
8176 fidl::encoding::DefaultFuchsiaResourceDialect,
8177 >,
8178 offset: usize,
8179 depth: fidl::encoding::Depth,
8180 ) -> fidl::Result<()> {
8181 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorRequest>(offset);
8182 unsafe {
8185 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
8186 (ptr as *mut u64).write_unaligned(0);
8187 }
8188 unsafe {
8189 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(40);
8190 (ptr as *mut u64).write_unaligned(0);
8191 }
8192 self.0.encode(encoder, offset + 0, depth)?;
8194 self.1.encode(encoder, offset + 16, depth)?;
8195 self.2.encode(encoder, offset + 24, depth)?;
8196 self.3.encode(encoder, offset + 40, depth)?;
8197 Ok(())
8198 }
8199 }
8200
8201 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8202 for EchoEchoXunionsWithErrorRequest
8203 {
8204 #[inline(always)]
8205 fn new_empty() -> Self {
8206 Self {
8207 value: fidl::new_empty!(
8208 fidl::encoding::UnboundedVector<AllTypesXunion>,
8209 fidl::encoding::DefaultFuchsiaResourceDialect
8210 ),
8211 result_err: fidl::new_empty!(
8212 DefaultEnum,
8213 fidl::encoding::DefaultFuchsiaResourceDialect
8214 ),
8215 forward_to_server: fidl::new_empty!(
8216 fidl::encoding::UnboundedString,
8217 fidl::encoding::DefaultFuchsiaResourceDialect
8218 ),
8219 result_variant: fidl::new_empty!(
8220 RespondWith,
8221 fidl::encoding::DefaultFuchsiaResourceDialect
8222 ),
8223 }
8224 }
8225
8226 #[inline]
8227 unsafe fn decode(
8228 &mut self,
8229 decoder: &mut fidl::encoding::Decoder<
8230 '_,
8231 fidl::encoding::DefaultFuchsiaResourceDialect,
8232 >,
8233 offset: usize,
8234 _depth: fidl::encoding::Depth,
8235 ) -> fidl::Result<()> {
8236 decoder.debug_check_bounds::<Self>(offset);
8237 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
8239 let padval = unsafe { (ptr as *const u64).read_unaligned() };
8240 let mask = 0xffffffff00000000u64;
8241 let maskedval = padval & mask;
8242 if maskedval != 0 {
8243 return Err(fidl::Error::NonZeroPadding {
8244 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
8245 });
8246 }
8247 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(40) };
8248 let padval = unsafe { (ptr as *const u64).read_unaligned() };
8249 let mask = 0xffffffff00000000u64;
8250 let maskedval = padval & mask;
8251 if maskedval != 0 {
8252 return Err(fidl::Error::NonZeroPadding {
8253 padding_start: offset + 40 + ((mask as u64).trailing_zeros() / 8) as usize,
8254 });
8255 }
8256 fidl::decode!(
8257 fidl::encoding::UnboundedVector<AllTypesXunion>,
8258 fidl::encoding::DefaultFuchsiaResourceDialect,
8259 &mut self.value,
8260 decoder,
8261 offset + 0,
8262 _depth
8263 )?;
8264 fidl::decode!(
8265 DefaultEnum,
8266 fidl::encoding::DefaultFuchsiaResourceDialect,
8267 &mut self.result_err,
8268 decoder,
8269 offset + 16,
8270 _depth
8271 )?;
8272 fidl::decode!(
8273 fidl::encoding::UnboundedString,
8274 fidl::encoding::DefaultFuchsiaResourceDialect,
8275 &mut self.forward_to_server,
8276 decoder,
8277 offset + 24,
8278 _depth
8279 )?;
8280 fidl::decode!(
8281 RespondWith,
8282 fidl::encoding::DefaultFuchsiaResourceDialect,
8283 &mut self.result_variant,
8284 decoder,
8285 offset + 40,
8286 _depth
8287 )?;
8288 Ok(())
8289 }
8290 }
8291
8292 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysWithErrorResponse {
8293 type Borrowed<'a> = &'a mut Self;
8294 fn take_or_borrow<'a>(
8295 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8296 ) -> Self::Borrowed<'a> {
8297 value
8298 }
8299 }
8300
8301 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysWithErrorResponse {
8302 type Owned = Self;
8303
8304 #[inline(always)]
8305 fn inline_align(_context: fidl::encoding::Context) -> usize {
8306 8
8307 }
8308
8309 #[inline(always)]
8310 fn inline_size(_context: fidl::encoding::Context) -> usize {
8311 680
8312 }
8313 }
8314
8315 unsafe impl
8316 fidl::encoding::Encode<
8317 EchoEchoArraysWithErrorResponse,
8318 fidl::encoding::DefaultFuchsiaResourceDialect,
8319 > for &mut EchoEchoArraysWithErrorResponse
8320 {
8321 #[inline]
8322 unsafe fn encode(
8323 self,
8324 encoder: &mut fidl::encoding::Encoder<
8325 '_,
8326 fidl::encoding::DefaultFuchsiaResourceDialect,
8327 >,
8328 offset: usize,
8329 _depth: fidl::encoding::Depth,
8330 ) -> fidl::Result<()> {
8331 encoder.debug_check_bounds::<EchoEchoArraysWithErrorResponse>(offset);
8332 fidl::encoding::Encode::<
8334 EchoEchoArraysWithErrorResponse,
8335 fidl::encoding::DefaultFuchsiaResourceDialect,
8336 >::encode(
8337 (<ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8338 &mut self.value,
8339 ),),
8340 encoder,
8341 offset,
8342 _depth,
8343 )
8344 }
8345 }
8346 unsafe impl<
8347 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
8348 >
8349 fidl::encoding::Encode<
8350 EchoEchoArraysWithErrorResponse,
8351 fidl::encoding::DefaultFuchsiaResourceDialect,
8352 > for (T0,)
8353 {
8354 #[inline]
8355 unsafe fn encode(
8356 self,
8357 encoder: &mut fidl::encoding::Encoder<
8358 '_,
8359 fidl::encoding::DefaultFuchsiaResourceDialect,
8360 >,
8361 offset: usize,
8362 depth: fidl::encoding::Depth,
8363 ) -> fidl::Result<()> {
8364 encoder.debug_check_bounds::<EchoEchoArraysWithErrorResponse>(offset);
8365 self.0.encode(encoder, offset + 0, depth)?;
8369 Ok(())
8370 }
8371 }
8372
8373 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8374 for EchoEchoArraysWithErrorResponse
8375 {
8376 #[inline(always)]
8377 fn new_empty() -> Self {
8378 Self {
8379 value: fidl::new_empty!(
8380 ArraysStruct,
8381 fidl::encoding::DefaultFuchsiaResourceDialect
8382 ),
8383 }
8384 }
8385
8386 #[inline]
8387 unsafe fn decode(
8388 &mut self,
8389 decoder: &mut fidl::encoding::Decoder<
8390 '_,
8391 fidl::encoding::DefaultFuchsiaResourceDialect,
8392 >,
8393 offset: usize,
8394 _depth: fidl::encoding::Depth,
8395 ) -> fidl::Result<()> {
8396 decoder.debug_check_bounds::<Self>(offset);
8397 fidl::decode!(
8399 ArraysStruct,
8400 fidl::encoding::DefaultFuchsiaResourceDialect,
8401 &mut self.value,
8402 decoder,
8403 offset + 0,
8404 _depth
8405 )?;
8406 Ok(())
8407 }
8408 }
8409
8410 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructWithErrorResponse {
8411 type Borrowed<'a> = &'a mut Self;
8412 fn take_or_borrow<'a>(
8413 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8414 ) -> Self::Borrowed<'a> {
8415 value
8416 }
8417 }
8418
8419 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructWithErrorResponse {
8420 type Owned = Self;
8421
8422 #[inline(always)]
8423 fn inline_align(_context: fidl::encoding::Context) -> usize {
8424 8
8425 }
8426
8427 #[inline(always)]
8428 fn inline_size(_context: fidl::encoding::Context) -> usize {
8429 2912
8430 }
8431 }
8432
8433 unsafe impl
8434 fidl::encoding::Encode<
8435 EchoEchoStructWithErrorResponse,
8436 fidl::encoding::DefaultFuchsiaResourceDialect,
8437 > for &mut EchoEchoStructWithErrorResponse
8438 {
8439 #[inline]
8440 unsafe fn encode(
8441 self,
8442 encoder: &mut fidl::encoding::Encoder<
8443 '_,
8444 fidl::encoding::DefaultFuchsiaResourceDialect,
8445 >,
8446 offset: usize,
8447 _depth: fidl::encoding::Depth,
8448 ) -> fidl::Result<()> {
8449 encoder.debug_check_bounds::<EchoEchoStructWithErrorResponse>(offset);
8450 fidl::encoding::Encode::<
8452 EchoEchoStructWithErrorResponse,
8453 fidl::encoding::DefaultFuchsiaResourceDialect,
8454 >::encode(
8455 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
8456 encoder,
8457 offset,
8458 _depth,
8459 )
8460 }
8461 }
8462 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
8463 fidl::encoding::Encode<
8464 EchoEchoStructWithErrorResponse,
8465 fidl::encoding::DefaultFuchsiaResourceDialect,
8466 > for (T0,)
8467 {
8468 #[inline]
8469 unsafe fn encode(
8470 self,
8471 encoder: &mut fidl::encoding::Encoder<
8472 '_,
8473 fidl::encoding::DefaultFuchsiaResourceDialect,
8474 >,
8475 offset: usize,
8476 depth: fidl::encoding::Depth,
8477 ) -> fidl::Result<()> {
8478 encoder.debug_check_bounds::<EchoEchoStructWithErrorResponse>(offset);
8479 self.0.encode(encoder, offset + 0, depth)?;
8483 Ok(())
8484 }
8485 }
8486
8487 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8488 for EchoEchoStructWithErrorResponse
8489 {
8490 #[inline(always)]
8491 fn new_empty() -> Self {
8492 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
8493 }
8494
8495 #[inline]
8496 unsafe fn decode(
8497 &mut self,
8498 decoder: &mut fidl::encoding::Decoder<
8499 '_,
8500 fidl::encoding::DefaultFuchsiaResourceDialect,
8501 >,
8502 offset: usize,
8503 _depth: fidl::encoding::Depth,
8504 ) -> fidl::Result<()> {
8505 decoder.debug_check_bounds::<Self>(offset);
8506 fidl::decode!(
8508 Struct,
8509 fidl::encoding::DefaultFuchsiaResourceDialect,
8510 &mut self.value,
8511 decoder,
8512 offset + 0,
8513 _depth
8514 )?;
8515 Ok(())
8516 }
8517 }
8518
8519 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableWithErrorResponse {
8520 type Borrowed<'a> = &'a mut Self;
8521 fn take_or_borrow<'a>(
8522 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8523 ) -> Self::Borrowed<'a> {
8524 value
8525 }
8526 }
8527
8528 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableWithErrorResponse {
8529 type Owned = Self;
8530
8531 #[inline(always)]
8532 fn inline_align(_context: fidl::encoding::Context) -> usize {
8533 8
8534 }
8535
8536 #[inline(always)]
8537 fn inline_size(_context: fidl::encoding::Context) -> usize {
8538 16
8539 }
8540 }
8541
8542 unsafe impl
8543 fidl::encoding::Encode<
8544 EchoEchoTableWithErrorResponse,
8545 fidl::encoding::DefaultFuchsiaResourceDialect,
8546 > for &mut EchoEchoTableWithErrorResponse
8547 {
8548 #[inline]
8549 unsafe fn encode(
8550 self,
8551 encoder: &mut fidl::encoding::Encoder<
8552 '_,
8553 fidl::encoding::DefaultFuchsiaResourceDialect,
8554 >,
8555 offset: usize,
8556 _depth: fidl::encoding::Depth,
8557 ) -> fidl::Result<()> {
8558 encoder.debug_check_bounds::<EchoEchoTableWithErrorResponse>(offset);
8559 fidl::encoding::Encode::<
8561 EchoEchoTableWithErrorResponse,
8562 fidl::encoding::DefaultFuchsiaResourceDialect,
8563 >::encode(
8564 (<AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8565 &mut self.value,
8566 ),),
8567 encoder,
8568 offset,
8569 _depth,
8570 )
8571 }
8572 }
8573 unsafe impl<
8574 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
8575 >
8576 fidl::encoding::Encode<
8577 EchoEchoTableWithErrorResponse,
8578 fidl::encoding::DefaultFuchsiaResourceDialect,
8579 > for (T0,)
8580 {
8581 #[inline]
8582 unsafe fn encode(
8583 self,
8584 encoder: &mut fidl::encoding::Encoder<
8585 '_,
8586 fidl::encoding::DefaultFuchsiaResourceDialect,
8587 >,
8588 offset: usize,
8589 depth: fidl::encoding::Depth,
8590 ) -> fidl::Result<()> {
8591 encoder.debug_check_bounds::<EchoEchoTableWithErrorResponse>(offset);
8592 self.0.encode(encoder, offset + 0, depth)?;
8596 Ok(())
8597 }
8598 }
8599
8600 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8601 for EchoEchoTableWithErrorResponse
8602 {
8603 #[inline(always)]
8604 fn new_empty() -> Self {
8605 Self {
8606 value: fidl::new_empty!(
8607 AllTypesTable,
8608 fidl::encoding::DefaultFuchsiaResourceDialect
8609 ),
8610 }
8611 }
8612
8613 #[inline]
8614 unsafe fn decode(
8615 &mut self,
8616 decoder: &mut fidl::encoding::Decoder<
8617 '_,
8618 fidl::encoding::DefaultFuchsiaResourceDialect,
8619 >,
8620 offset: usize,
8621 _depth: fidl::encoding::Depth,
8622 ) -> fidl::Result<()> {
8623 decoder.debug_check_bounds::<Self>(offset);
8624 fidl::decode!(
8626 AllTypesTable,
8627 fidl::encoding::DefaultFuchsiaResourceDialect,
8628 &mut self.value,
8629 decoder,
8630 offset + 0,
8631 _depth
8632 )?;
8633 Ok(())
8634 }
8635 }
8636
8637 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsWithErrorResponse {
8638 type Borrowed<'a> = &'a mut Self;
8639 fn take_or_borrow<'a>(
8640 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8641 ) -> Self::Borrowed<'a> {
8642 value
8643 }
8644 }
8645
8646 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsWithErrorResponse {
8647 type Owned = Self;
8648
8649 #[inline(always)]
8650 fn inline_align(_context: fidl::encoding::Context) -> usize {
8651 8
8652 }
8653
8654 #[inline(always)]
8655 fn inline_size(_context: fidl::encoding::Context) -> usize {
8656 416
8657 }
8658 }
8659
8660 unsafe impl
8661 fidl::encoding::Encode<
8662 EchoEchoVectorsWithErrorResponse,
8663 fidl::encoding::DefaultFuchsiaResourceDialect,
8664 > for &mut EchoEchoVectorsWithErrorResponse
8665 {
8666 #[inline]
8667 unsafe fn encode(
8668 self,
8669 encoder: &mut fidl::encoding::Encoder<
8670 '_,
8671 fidl::encoding::DefaultFuchsiaResourceDialect,
8672 >,
8673 offset: usize,
8674 _depth: fidl::encoding::Depth,
8675 ) -> fidl::Result<()> {
8676 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorResponse>(offset);
8677 fidl::encoding::Encode::<
8679 EchoEchoVectorsWithErrorResponse,
8680 fidl::encoding::DefaultFuchsiaResourceDialect,
8681 >::encode(
8682 (<VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8683 &mut self.value,
8684 ),),
8685 encoder,
8686 offset,
8687 _depth,
8688 )
8689 }
8690 }
8691 unsafe impl<
8692 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
8693 >
8694 fidl::encoding::Encode<
8695 EchoEchoVectorsWithErrorResponse,
8696 fidl::encoding::DefaultFuchsiaResourceDialect,
8697 > for (T0,)
8698 {
8699 #[inline]
8700 unsafe fn encode(
8701 self,
8702 encoder: &mut fidl::encoding::Encoder<
8703 '_,
8704 fidl::encoding::DefaultFuchsiaResourceDialect,
8705 >,
8706 offset: usize,
8707 depth: fidl::encoding::Depth,
8708 ) -> fidl::Result<()> {
8709 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorResponse>(offset);
8710 self.0.encode(encoder, offset + 0, depth)?;
8714 Ok(())
8715 }
8716 }
8717
8718 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8719 for EchoEchoVectorsWithErrorResponse
8720 {
8721 #[inline(always)]
8722 fn new_empty() -> Self {
8723 Self {
8724 value: fidl::new_empty!(
8725 VectorsStruct,
8726 fidl::encoding::DefaultFuchsiaResourceDialect
8727 ),
8728 }
8729 }
8730
8731 #[inline]
8732 unsafe fn decode(
8733 &mut self,
8734 decoder: &mut fidl::encoding::Decoder<
8735 '_,
8736 fidl::encoding::DefaultFuchsiaResourceDialect,
8737 >,
8738 offset: usize,
8739 _depth: fidl::encoding::Depth,
8740 ) -> fidl::Result<()> {
8741 decoder.debug_check_bounds::<Self>(offset);
8742 fidl::decode!(
8744 VectorsStruct,
8745 fidl::encoding::DefaultFuchsiaResourceDialect,
8746 &mut self.value,
8747 decoder,
8748 offset + 0,
8749 _depth
8750 )?;
8751 Ok(())
8752 }
8753 }
8754
8755 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsWithErrorResponse {
8756 type Borrowed<'a> = &'a mut Self;
8757 fn take_or_borrow<'a>(
8758 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8759 ) -> Self::Borrowed<'a> {
8760 value
8761 }
8762 }
8763
8764 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsWithErrorResponse {
8765 type Owned = Self;
8766
8767 #[inline(always)]
8768 fn inline_align(_context: fidl::encoding::Context) -> usize {
8769 8
8770 }
8771
8772 #[inline(always)]
8773 fn inline_size(_context: fidl::encoding::Context) -> usize {
8774 16
8775 }
8776 }
8777
8778 unsafe impl
8779 fidl::encoding::Encode<
8780 EchoEchoXunionsWithErrorResponse,
8781 fidl::encoding::DefaultFuchsiaResourceDialect,
8782 > for &mut EchoEchoXunionsWithErrorResponse
8783 {
8784 #[inline]
8785 unsafe fn encode(
8786 self,
8787 encoder: &mut fidl::encoding::Encoder<
8788 '_,
8789 fidl::encoding::DefaultFuchsiaResourceDialect,
8790 >,
8791 offset: usize,
8792 _depth: fidl::encoding::Depth,
8793 ) -> fidl::Result<()> {
8794 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorResponse>(offset);
8795 fidl::encoding::Encode::<EchoEchoXunionsWithErrorResponse, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8797 (
8798 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8799 ),
8800 encoder, offset, _depth
8801 )
8802 }
8803 }
8804 unsafe impl<
8805 T0: fidl::encoding::Encode<
8806 fidl::encoding::UnboundedVector<AllTypesXunion>,
8807 fidl::encoding::DefaultFuchsiaResourceDialect,
8808 >,
8809 >
8810 fidl::encoding::Encode<
8811 EchoEchoXunionsWithErrorResponse,
8812 fidl::encoding::DefaultFuchsiaResourceDialect,
8813 > for (T0,)
8814 {
8815 #[inline]
8816 unsafe fn encode(
8817 self,
8818 encoder: &mut fidl::encoding::Encoder<
8819 '_,
8820 fidl::encoding::DefaultFuchsiaResourceDialect,
8821 >,
8822 offset: usize,
8823 depth: fidl::encoding::Depth,
8824 ) -> fidl::Result<()> {
8825 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorResponse>(offset);
8826 self.0.encode(encoder, offset + 0, depth)?;
8830 Ok(())
8831 }
8832 }
8833
8834 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8835 for EchoEchoXunionsWithErrorResponse
8836 {
8837 #[inline(always)]
8838 fn new_empty() -> Self {
8839 Self {
8840 value: fidl::new_empty!(
8841 fidl::encoding::UnboundedVector<AllTypesXunion>,
8842 fidl::encoding::DefaultFuchsiaResourceDialect
8843 ),
8844 }
8845 }
8846
8847 #[inline]
8848 unsafe fn decode(
8849 &mut self,
8850 decoder: &mut fidl::encoding::Decoder<
8851 '_,
8852 fidl::encoding::DefaultFuchsiaResourceDialect,
8853 >,
8854 offset: usize,
8855 _depth: fidl::encoding::Depth,
8856 ) -> fidl::Result<()> {
8857 decoder.debug_check_bounds::<Self>(offset);
8858 fidl::decode!(
8860 fidl::encoding::UnboundedVector<AllTypesXunion>,
8861 fidl::encoding::DefaultFuchsiaResourceDialect,
8862 &mut self.value,
8863 decoder,
8864 offset + 0,
8865 _depth
8866 )?;
8867 Ok(())
8868 }
8869 }
8870
8871 impl fidl::encoding::ResourceTypeMarker for Struct {
8872 type Borrowed<'a> = &'a mut Self;
8873 fn take_or_borrow<'a>(
8874 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8875 ) -> Self::Borrowed<'a> {
8876 value
8877 }
8878 }
8879
8880 unsafe impl fidl::encoding::TypeMarker for Struct {
8881 type Owned = Self;
8882
8883 #[inline(always)]
8884 fn inline_align(_context: fidl::encoding::Context) -> usize {
8885 8
8886 }
8887
8888 #[inline(always)]
8889 fn inline_size(_context: fidl::encoding::Context) -> usize {
8890 2912
8891 }
8892 }
8893
8894 unsafe impl fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>
8895 for &mut Struct
8896 {
8897 #[inline]
8898 unsafe fn encode(
8899 self,
8900 encoder: &mut fidl::encoding::Encoder<
8901 '_,
8902 fidl::encoding::DefaultFuchsiaResourceDialect,
8903 >,
8904 offset: usize,
8905 _depth: fidl::encoding::Depth,
8906 ) -> fidl::Result<()> {
8907 encoder.debug_check_bounds::<Struct>(offset);
8908 fidl::encoding::Encode::<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8910 (
8911 <PrimitiveTypes as fidl::encoding::ValueTypeMarker>::borrow(
8912 &self.primitive_types,
8913 ),
8914 <DefaultValues as fidl::encoding::ValueTypeMarker>::borrow(
8915 &self.default_values,
8916 ),
8917 <Arrays as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8918 &mut self.arrays,
8919 ),
8920 <Arrays2d as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8921 &mut self.arrays_2d,
8922 ),
8923 <Vectors as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8924 &mut self.vectors,
8925 ),
8926 <Handles as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8927 &mut self.handles,
8928 ),
8929 <Strings as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
8930 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.default_enum),
8931 <I8Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_enum),
8932 <I16Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_enum),
8933 <I32Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_enum),
8934 <I64Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_enum),
8935 <U8Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_enum),
8936 <U16Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_enum),
8937 <U32Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_enum),
8938 <U64Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_enum),
8939 <DefaultBits as fidl::encoding::ValueTypeMarker>::borrow(&self.default_bits),
8940 <U8Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_bits),
8941 <U16Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_bits),
8942 <U32Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_bits),
8943 <U64Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_bits),
8944 <Structs as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
8945 <Unions as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
8946 <ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow(&self.table),
8947 <ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow(&self.xunion),
8948 <bool as fidl::encoding::ValueTypeMarker>::borrow(&self.b),
8949 ),
8950 encoder,
8951 offset,
8952 _depth,
8953 )
8954 }
8955 }
8956 unsafe impl<
8957 T0: fidl::encoding::Encode<PrimitiveTypes, fidl::encoding::DefaultFuchsiaResourceDialect>,
8958 T1: fidl::encoding::Encode<DefaultValues, fidl::encoding::DefaultFuchsiaResourceDialect>,
8959 T2: fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>,
8960 T3: fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>,
8961 T4: fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>,
8962 T5: fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>,
8963 T6: fidl::encoding::Encode<Strings, fidl::encoding::DefaultFuchsiaResourceDialect>,
8964 T7: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8965 T8: fidl::encoding::Encode<I8Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8966 T9: fidl::encoding::Encode<I16Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8967 T10: fidl::encoding::Encode<I32Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8968 T11: fidl::encoding::Encode<I64Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8969 T12: fidl::encoding::Encode<U8Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8970 T13: fidl::encoding::Encode<U16Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8971 T14: fidl::encoding::Encode<U32Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8972 T15: fidl::encoding::Encode<U64Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8973 T16: fidl::encoding::Encode<DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8974 T17: fidl::encoding::Encode<U8Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8975 T18: fidl::encoding::Encode<U16Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8976 T19: fidl::encoding::Encode<U32Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8977 T20: fidl::encoding::Encode<U64Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8978 T21: fidl::encoding::Encode<Structs, fidl::encoding::DefaultFuchsiaResourceDialect>,
8979 T22: fidl::encoding::Encode<Unions, fidl::encoding::DefaultFuchsiaResourceDialect>,
8980 T23: fidl::encoding::Encode<ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect>,
8981 T24: fidl::encoding::Encode<ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect>,
8982 T25: fidl::encoding::Encode<bool, fidl::encoding::DefaultFuchsiaResourceDialect>,
8983 > fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>
8984 for (
8985 T0,
8986 T1,
8987 T2,
8988 T3,
8989 T4,
8990 T5,
8991 T6,
8992 T7,
8993 T8,
8994 T9,
8995 T10,
8996 T11,
8997 T12,
8998 T13,
8999 T14,
9000 T15,
9001 T16,
9002 T17,
9003 T18,
9004 T19,
9005 T20,
9006 T21,
9007 T22,
9008 T23,
9009 T24,
9010 T25,
9011 )
9012 {
9013 #[inline]
9014 unsafe fn encode(
9015 self,
9016 encoder: &mut fidl::encoding::Encoder<
9017 '_,
9018 fidl::encoding::DefaultFuchsiaResourceDialect,
9019 >,
9020 offset: usize,
9021 depth: fidl::encoding::Depth,
9022 ) -> fidl::Result<()> {
9023 encoder.debug_check_bounds::<Struct>(offset);
9024 unsafe {
9027 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2640);
9028 (ptr as *mut u64).write_unaligned(0);
9029 }
9030 unsafe {
9031 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2744);
9032 (ptr as *mut u64).write_unaligned(0);
9033 }
9034 unsafe {
9035 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2752);
9036 (ptr as *mut u64).write_unaligned(0);
9037 }
9038 unsafe {
9039 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2768);
9040 (ptr as *mut u64).write_unaligned(0);
9041 }
9042 unsafe {
9043 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2784);
9044 (ptr as *mut u64).write_unaligned(0);
9045 }
9046 unsafe {
9047 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2792);
9048 (ptr as *mut u64).write_unaligned(0);
9049 }
9050 unsafe {
9051 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2904);
9052 (ptr as *mut u64).write_unaligned(0);
9053 }
9054 self.0.encode(encoder, offset + 0, depth)?;
9056 self.1.encode(encoder, offset + 48, depth)?;
9057 self.2.encode(encoder, offset + 120, depth)?;
9058 self.3.encode(encoder, offset + 328, depth)?;
9059 self.4.encode(encoder, offset + 616, depth)?;
9060 self.5.encode(encoder, offset + 2536, depth)?;
9061 self.6.encode(encoder, offset + 2648, depth)?;
9062 self.7.encode(encoder, offset + 2744, depth)?;
9063 self.8.encode(encoder, offset + 2748, depth)?;
9064 self.9.encode(encoder, offset + 2750, depth)?;
9065 self.10.encode(encoder, offset + 2752, depth)?;
9066 self.11.encode(encoder, offset + 2760, depth)?;
9067 self.12.encode(encoder, offset + 2768, depth)?;
9068 self.13.encode(encoder, offset + 2770, depth)?;
9069 self.14.encode(encoder, offset + 2772, depth)?;
9070 self.15.encode(encoder, offset + 2776, depth)?;
9071 self.16.encode(encoder, offset + 2784, depth)?;
9072 self.17.encode(encoder, offset + 2788, depth)?;
9073 self.18.encode(encoder, offset + 2790, depth)?;
9074 self.19.encode(encoder, offset + 2792, depth)?;
9075 self.20.encode(encoder, offset + 2800, depth)?;
9076 self.21.encode(encoder, offset + 2808, depth)?;
9077 self.22.encode(encoder, offset + 2840, depth)?;
9078 self.23.encode(encoder, offset + 2872, depth)?;
9079 self.24.encode(encoder, offset + 2888, depth)?;
9080 self.25.encode(encoder, offset + 2904, depth)?;
9081 Ok(())
9082 }
9083 }
9084
9085 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Struct {
9086 #[inline(always)]
9087 fn new_empty() -> Self {
9088 Self {
9089 primitive_types: fidl::new_empty!(
9090 PrimitiveTypes,
9091 fidl::encoding::DefaultFuchsiaResourceDialect
9092 ),
9093 default_values: fidl::new_empty!(
9094 DefaultValues,
9095 fidl::encoding::DefaultFuchsiaResourceDialect
9096 ),
9097 arrays: fidl::new_empty!(Arrays, fidl::encoding::DefaultFuchsiaResourceDialect),
9098 arrays_2d: fidl::new_empty!(
9099 Arrays2d,
9100 fidl::encoding::DefaultFuchsiaResourceDialect
9101 ),
9102 vectors: fidl::new_empty!(Vectors, fidl::encoding::DefaultFuchsiaResourceDialect),
9103 handles: fidl::new_empty!(Handles, fidl::encoding::DefaultFuchsiaResourceDialect),
9104 strings: fidl::new_empty!(Strings, fidl::encoding::DefaultFuchsiaResourceDialect),
9105 default_enum: fidl::new_empty!(
9106 DefaultEnum,
9107 fidl::encoding::DefaultFuchsiaResourceDialect
9108 ),
9109 i8_enum: fidl::new_empty!(I8Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9110 i16_enum: fidl::new_empty!(I16Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9111 i32_enum: fidl::new_empty!(I32Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9112 i64_enum: fidl::new_empty!(I64Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9113 u8_enum: fidl::new_empty!(U8Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9114 u16_enum: fidl::new_empty!(U16Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9115 u32_enum: fidl::new_empty!(U32Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9116 u64_enum: fidl::new_empty!(U64Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9117 default_bits: fidl::new_empty!(
9118 DefaultBits,
9119 fidl::encoding::DefaultFuchsiaResourceDialect
9120 ),
9121 u8_bits: fidl::new_empty!(U8Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9122 u16_bits: fidl::new_empty!(U16Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9123 u32_bits: fidl::new_empty!(U32Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9124 u64_bits: fidl::new_empty!(U64Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9125 structs: fidl::new_empty!(Structs, fidl::encoding::DefaultFuchsiaResourceDialect),
9126 unions: fidl::new_empty!(Unions, fidl::encoding::DefaultFuchsiaResourceDialect),
9127 table: fidl::new_empty!(
9128 ThisIsATable,
9129 fidl::encoding::DefaultFuchsiaResourceDialect
9130 ),
9131 xunion: fidl::new_empty!(
9132 ThisIsAXunion,
9133 fidl::encoding::DefaultFuchsiaResourceDialect
9134 ),
9135 b: fidl::new_empty!(bool, fidl::encoding::DefaultFuchsiaResourceDialect),
9136 }
9137 }
9138
9139 #[inline]
9140 unsafe fn decode(
9141 &mut self,
9142 decoder: &mut fidl::encoding::Decoder<
9143 '_,
9144 fidl::encoding::DefaultFuchsiaResourceDialect,
9145 >,
9146 offset: usize,
9147 _depth: fidl::encoding::Depth,
9148 ) -> fidl::Result<()> {
9149 decoder.debug_check_bounds::<Self>(offset);
9150 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2640) };
9152 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9153 let mask = 0xffffffff00000000u64;
9154 let maskedval = padval & mask;
9155 if maskedval != 0 {
9156 return Err(fidl::Error::NonZeroPadding {
9157 padding_start: offset + 2640 + ((mask as u64).trailing_zeros() / 8) as usize,
9158 });
9159 }
9160 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2744) };
9161 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9162 let mask = 0xff0000000000u64;
9163 let maskedval = padval & mask;
9164 if maskedval != 0 {
9165 return Err(fidl::Error::NonZeroPadding {
9166 padding_start: offset + 2744 + ((mask as u64).trailing_zeros() / 8) as usize,
9167 });
9168 }
9169 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2752) };
9170 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9171 let mask = 0xffffffff00000000u64;
9172 let maskedval = padval & mask;
9173 if maskedval != 0 {
9174 return Err(fidl::Error::NonZeroPadding {
9175 padding_start: offset + 2752 + ((mask as u64).trailing_zeros() / 8) as usize,
9176 });
9177 }
9178 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2768) };
9179 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9180 let mask = 0xff00u64;
9181 let maskedval = padval & mask;
9182 if maskedval != 0 {
9183 return Err(fidl::Error::NonZeroPadding {
9184 padding_start: offset + 2768 + ((mask as u64).trailing_zeros() / 8) as usize,
9185 });
9186 }
9187 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2784) };
9188 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9189 let mask = 0xff0000000000u64;
9190 let maskedval = padval & mask;
9191 if maskedval != 0 {
9192 return Err(fidl::Error::NonZeroPadding {
9193 padding_start: offset + 2784 + ((mask as u64).trailing_zeros() / 8) as usize,
9194 });
9195 }
9196 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2792) };
9197 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9198 let mask = 0xffffffff00000000u64;
9199 let maskedval = padval & mask;
9200 if maskedval != 0 {
9201 return Err(fidl::Error::NonZeroPadding {
9202 padding_start: offset + 2792 + ((mask as u64).trailing_zeros() / 8) as usize,
9203 });
9204 }
9205 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2904) };
9206 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9207 let mask = 0xffffffffffffff00u64;
9208 let maskedval = padval & mask;
9209 if maskedval != 0 {
9210 return Err(fidl::Error::NonZeroPadding {
9211 padding_start: offset + 2904 + ((mask as u64).trailing_zeros() / 8) as usize,
9212 });
9213 }
9214 fidl::decode!(
9215 PrimitiveTypes,
9216 fidl::encoding::DefaultFuchsiaResourceDialect,
9217 &mut self.primitive_types,
9218 decoder,
9219 offset + 0,
9220 _depth
9221 )?;
9222 fidl::decode!(
9223 DefaultValues,
9224 fidl::encoding::DefaultFuchsiaResourceDialect,
9225 &mut self.default_values,
9226 decoder,
9227 offset + 48,
9228 _depth
9229 )?;
9230 fidl::decode!(
9231 Arrays,
9232 fidl::encoding::DefaultFuchsiaResourceDialect,
9233 &mut self.arrays,
9234 decoder,
9235 offset + 120,
9236 _depth
9237 )?;
9238 fidl::decode!(
9239 Arrays2d,
9240 fidl::encoding::DefaultFuchsiaResourceDialect,
9241 &mut self.arrays_2d,
9242 decoder,
9243 offset + 328,
9244 _depth
9245 )?;
9246 fidl::decode!(
9247 Vectors,
9248 fidl::encoding::DefaultFuchsiaResourceDialect,
9249 &mut self.vectors,
9250 decoder,
9251 offset + 616,
9252 _depth
9253 )?;
9254 fidl::decode!(
9255 Handles,
9256 fidl::encoding::DefaultFuchsiaResourceDialect,
9257 &mut self.handles,
9258 decoder,
9259 offset + 2536,
9260 _depth
9261 )?;
9262 fidl::decode!(
9263 Strings,
9264 fidl::encoding::DefaultFuchsiaResourceDialect,
9265 &mut self.strings,
9266 decoder,
9267 offset + 2648,
9268 _depth
9269 )?;
9270 fidl::decode!(
9271 DefaultEnum,
9272 fidl::encoding::DefaultFuchsiaResourceDialect,
9273 &mut self.default_enum,
9274 decoder,
9275 offset + 2744,
9276 _depth
9277 )?;
9278 fidl::decode!(
9279 I8Enum,
9280 fidl::encoding::DefaultFuchsiaResourceDialect,
9281 &mut self.i8_enum,
9282 decoder,
9283 offset + 2748,
9284 _depth
9285 )?;
9286 fidl::decode!(
9287 I16Enum,
9288 fidl::encoding::DefaultFuchsiaResourceDialect,
9289 &mut self.i16_enum,
9290 decoder,
9291 offset + 2750,
9292 _depth
9293 )?;
9294 fidl::decode!(
9295 I32Enum,
9296 fidl::encoding::DefaultFuchsiaResourceDialect,
9297 &mut self.i32_enum,
9298 decoder,
9299 offset + 2752,
9300 _depth
9301 )?;
9302 fidl::decode!(
9303 I64Enum,
9304 fidl::encoding::DefaultFuchsiaResourceDialect,
9305 &mut self.i64_enum,
9306 decoder,
9307 offset + 2760,
9308 _depth
9309 )?;
9310 fidl::decode!(
9311 U8Enum,
9312 fidl::encoding::DefaultFuchsiaResourceDialect,
9313 &mut self.u8_enum,
9314 decoder,
9315 offset + 2768,
9316 _depth
9317 )?;
9318 fidl::decode!(
9319 U16Enum,
9320 fidl::encoding::DefaultFuchsiaResourceDialect,
9321 &mut self.u16_enum,
9322 decoder,
9323 offset + 2770,
9324 _depth
9325 )?;
9326 fidl::decode!(
9327 U32Enum,
9328 fidl::encoding::DefaultFuchsiaResourceDialect,
9329 &mut self.u32_enum,
9330 decoder,
9331 offset + 2772,
9332 _depth
9333 )?;
9334 fidl::decode!(
9335 U64Enum,
9336 fidl::encoding::DefaultFuchsiaResourceDialect,
9337 &mut self.u64_enum,
9338 decoder,
9339 offset + 2776,
9340 _depth
9341 )?;
9342 fidl::decode!(
9343 DefaultBits,
9344 fidl::encoding::DefaultFuchsiaResourceDialect,
9345 &mut self.default_bits,
9346 decoder,
9347 offset + 2784,
9348 _depth
9349 )?;
9350 fidl::decode!(
9351 U8Bits,
9352 fidl::encoding::DefaultFuchsiaResourceDialect,
9353 &mut self.u8_bits,
9354 decoder,
9355 offset + 2788,
9356 _depth
9357 )?;
9358 fidl::decode!(
9359 U16Bits,
9360 fidl::encoding::DefaultFuchsiaResourceDialect,
9361 &mut self.u16_bits,
9362 decoder,
9363 offset + 2790,
9364 _depth
9365 )?;
9366 fidl::decode!(
9367 U32Bits,
9368 fidl::encoding::DefaultFuchsiaResourceDialect,
9369 &mut self.u32_bits,
9370 decoder,
9371 offset + 2792,
9372 _depth
9373 )?;
9374 fidl::decode!(
9375 U64Bits,
9376 fidl::encoding::DefaultFuchsiaResourceDialect,
9377 &mut self.u64_bits,
9378 decoder,
9379 offset + 2800,
9380 _depth
9381 )?;
9382 fidl::decode!(
9383 Structs,
9384 fidl::encoding::DefaultFuchsiaResourceDialect,
9385 &mut self.structs,
9386 decoder,
9387 offset + 2808,
9388 _depth
9389 )?;
9390 fidl::decode!(
9391 Unions,
9392 fidl::encoding::DefaultFuchsiaResourceDialect,
9393 &mut self.unions,
9394 decoder,
9395 offset + 2840,
9396 _depth
9397 )?;
9398 fidl::decode!(
9399 ThisIsATable,
9400 fidl::encoding::DefaultFuchsiaResourceDialect,
9401 &mut self.table,
9402 decoder,
9403 offset + 2872,
9404 _depth
9405 )?;
9406 fidl::decode!(
9407 ThisIsAXunion,
9408 fidl::encoding::DefaultFuchsiaResourceDialect,
9409 &mut self.xunion,
9410 decoder,
9411 offset + 2888,
9412 _depth
9413 )?;
9414 fidl::decode!(
9415 bool,
9416 fidl::encoding::DefaultFuchsiaResourceDialect,
9417 &mut self.b,
9418 decoder,
9419 offset + 2904,
9420 _depth
9421 )?;
9422 Ok(())
9423 }
9424 }
9425
9426 impl fidl::encoding::ResourceTypeMarker for VectorsStruct {
9427 type Borrowed<'a> = &'a mut Self;
9428 fn take_or_borrow<'a>(
9429 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
9430 ) -> Self::Borrowed<'a> {
9431 value
9432 }
9433 }
9434
9435 unsafe impl fidl::encoding::TypeMarker for VectorsStruct {
9436 type Owned = Self;
9437
9438 #[inline(always)]
9439 fn inline_align(_context: fidl::encoding::Context) -> usize {
9440 8
9441 }
9442
9443 #[inline(always)]
9444 fn inline_size(_context: fidl::encoding::Context) -> usize {
9445 416
9446 }
9447 }
9448
9449 unsafe impl fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
9450 for &mut VectorsStruct
9451 {
9452 #[inline]
9453 unsafe fn encode(
9454 self,
9455 encoder: &mut fidl::encoding::Encoder<
9456 '_,
9457 fidl::encoding::DefaultFuchsiaResourceDialect,
9458 >,
9459 offset: usize,
9460 _depth: fidl::encoding::Depth,
9461 ) -> fidl::Result<()> {
9462 encoder.debug_check_bounds::<VectorsStruct>(offset);
9463 fidl::encoding::Encode::<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
9465 (
9466 <fidl::encoding::Vector<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bools),
9467 <fidl::encoding::Vector<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int8s),
9468 <fidl::encoding::Vector<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int16s),
9469 <fidl::encoding::Vector<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int32s),
9470 <fidl::encoding::Vector<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int64s),
9471 <fidl::encoding::Vector<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint8s),
9472 <fidl::encoding::Vector<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint16s),
9473 <fidl::encoding::Vector<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint32s),
9474 <fidl::encoding::Vector<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint64s),
9475 <fidl::encoding::Vector<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float32s),
9476 <fidl::encoding::Vector<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float64s),
9477 <fidl::encoding::Vector<DefaultEnum, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.enums),
9478 <fidl::encoding::Vector<DefaultBits, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bits),
9479 <fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handles),
9480 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.nullable_handles),
9481 <fidl::encoding::Vector<fidl::encoding::UnboundedString, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
9482 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_strings),
9483 <fidl::encoding::Vector<ThisIsAStruct, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
9484 <fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_structs),
9485 <fidl::encoding::Vector<ThisIsAUnion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
9486 <fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_unions),
9487 <fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.arrays),
9488 <fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.vectors),
9489 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_vectors),
9490 <fidl::encoding::Vector<ThisIsATable, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.tables),
9491 <fidl::encoding::Vector<ThisIsAXunion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.xunions),
9492 ),
9493 encoder, offset, _depth
9494 )
9495 }
9496 }
9497 unsafe impl<
9498 T0: fidl::encoding::Encode<
9499 fidl::encoding::Vector<bool, 3>,
9500 fidl::encoding::DefaultFuchsiaResourceDialect,
9501 >,
9502 T1: fidl::encoding::Encode<
9503 fidl::encoding::Vector<i8, 3>,
9504 fidl::encoding::DefaultFuchsiaResourceDialect,
9505 >,
9506 T2: fidl::encoding::Encode<
9507 fidl::encoding::Vector<i16, 3>,
9508 fidl::encoding::DefaultFuchsiaResourceDialect,
9509 >,
9510 T3: fidl::encoding::Encode<
9511 fidl::encoding::Vector<i32, 3>,
9512 fidl::encoding::DefaultFuchsiaResourceDialect,
9513 >,
9514 T4: fidl::encoding::Encode<
9515 fidl::encoding::Vector<i64, 3>,
9516 fidl::encoding::DefaultFuchsiaResourceDialect,
9517 >,
9518 T5: fidl::encoding::Encode<
9519 fidl::encoding::Vector<u8, 3>,
9520 fidl::encoding::DefaultFuchsiaResourceDialect,
9521 >,
9522 T6: fidl::encoding::Encode<
9523 fidl::encoding::Vector<u16, 3>,
9524 fidl::encoding::DefaultFuchsiaResourceDialect,
9525 >,
9526 T7: fidl::encoding::Encode<
9527 fidl::encoding::Vector<u32, 3>,
9528 fidl::encoding::DefaultFuchsiaResourceDialect,
9529 >,
9530 T8: fidl::encoding::Encode<
9531 fidl::encoding::Vector<u64, 3>,
9532 fidl::encoding::DefaultFuchsiaResourceDialect,
9533 >,
9534 T9: fidl::encoding::Encode<
9535 fidl::encoding::Vector<f32, 3>,
9536 fidl::encoding::DefaultFuchsiaResourceDialect,
9537 >,
9538 T10: fidl::encoding::Encode<
9539 fidl::encoding::Vector<f64, 3>,
9540 fidl::encoding::DefaultFuchsiaResourceDialect,
9541 >,
9542 T11: fidl::encoding::Encode<
9543 fidl::encoding::Vector<DefaultEnum, 3>,
9544 fidl::encoding::DefaultFuchsiaResourceDialect,
9545 >,
9546 T12: fidl::encoding::Encode<
9547 fidl::encoding::Vector<DefaultBits, 3>,
9548 fidl::encoding::DefaultFuchsiaResourceDialect,
9549 >,
9550 T13: fidl::encoding::Encode<
9551 fidl::encoding::Vector<
9552 fidl::encoding::HandleType<
9553 fidl::Handle,
9554 { fidl::ObjectType::NONE.into_raw() },
9555 2147483648,
9556 >,
9557 3,
9558 >,
9559 fidl::encoding::DefaultFuchsiaResourceDialect,
9560 >,
9561 T14: fidl::encoding::Encode<
9562 fidl::encoding::Vector<
9563 fidl::encoding::Optional<
9564 fidl::encoding::HandleType<
9565 fidl::Handle,
9566 { fidl::ObjectType::NONE.into_raw() },
9567 2147483648,
9568 >,
9569 >,
9570 3,
9571 >,
9572 fidl::encoding::DefaultFuchsiaResourceDialect,
9573 >,
9574 T15: fidl::encoding::Encode<
9575 fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>,
9576 fidl::encoding::DefaultFuchsiaResourceDialect,
9577 >,
9578 T16: fidl::encoding::Encode<
9579 fidl::encoding::Vector<
9580 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9581 3,
9582 >,
9583 fidl::encoding::DefaultFuchsiaResourceDialect,
9584 >,
9585 T17: fidl::encoding::Encode<
9586 fidl::encoding::Vector<ThisIsAStruct, 3>,
9587 fidl::encoding::DefaultFuchsiaResourceDialect,
9588 >,
9589 T18: fidl::encoding::Encode<
9590 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9591 fidl::encoding::DefaultFuchsiaResourceDialect,
9592 >,
9593 T19: fidl::encoding::Encode<
9594 fidl::encoding::Vector<ThisIsAUnion, 3>,
9595 fidl::encoding::DefaultFuchsiaResourceDialect,
9596 >,
9597 T20: fidl::encoding::Encode<
9598 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9599 fidl::encoding::DefaultFuchsiaResourceDialect,
9600 >,
9601 T21: fidl::encoding::Encode<
9602 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9603 fidl::encoding::DefaultFuchsiaResourceDialect,
9604 >,
9605 T22: fidl::encoding::Encode<
9606 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9607 fidl::encoding::DefaultFuchsiaResourceDialect,
9608 >,
9609 T23: fidl::encoding::Encode<
9610 fidl::encoding::Vector<
9611 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9612 3,
9613 >,
9614 fidl::encoding::DefaultFuchsiaResourceDialect,
9615 >,
9616 T24: fidl::encoding::Encode<
9617 fidl::encoding::Vector<ThisIsATable, 3>,
9618 fidl::encoding::DefaultFuchsiaResourceDialect,
9619 >,
9620 T25: fidl::encoding::Encode<
9621 fidl::encoding::Vector<ThisIsAXunion, 3>,
9622 fidl::encoding::DefaultFuchsiaResourceDialect,
9623 >,
9624 > fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
9625 for (
9626 T0,
9627 T1,
9628 T2,
9629 T3,
9630 T4,
9631 T5,
9632 T6,
9633 T7,
9634 T8,
9635 T9,
9636 T10,
9637 T11,
9638 T12,
9639 T13,
9640 T14,
9641 T15,
9642 T16,
9643 T17,
9644 T18,
9645 T19,
9646 T20,
9647 T21,
9648 T22,
9649 T23,
9650 T24,
9651 T25,
9652 )
9653 {
9654 #[inline]
9655 unsafe fn encode(
9656 self,
9657 encoder: &mut fidl::encoding::Encoder<
9658 '_,
9659 fidl::encoding::DefaultFuchsiaResourceDialect,
9660 >,
9661 offset: usize,
9662 depth: fidl::encoding::Depth,
9663 ) -> fidl::Result<()> {
9664 encoder.debug_check_bounds::<VectorsStruct>(offset);
9665 self.0.encode(encoder, offset + 0, depth)?;
9669 self.1.encode(encoder, offset + 16, depth)?;
9670 self.2.encode(encoder, offset + 32, depth)?;
9671 self.3.encode(encoder, offset + 48, depth)?;
9672 self.4.encode(encoder, offset + 64, depth)?;
9673 self.5.encode(encoder, offset + 80, depth)?;
9674 self.6.encode(encoder, offset + 96, depth)?;
9675 self.7.encode(encoder, offset + 112, depth)?;
9676 self.8.encode(encoder, offset + 128, depth)?;
9677 self.9.encode(encoder, offset + 144, depth)?;
9678 self.10.encode(encoder, offset + 160, depth)?;
9679 self.11.encode(encoder, offset + 176, depth)?;
9680 self.12.encode(encoder, offset + 192, depth)?;
9681 self.13.encode(encoder, offset + 208, depth)?;
9682 self.14.encode(encoder, offset + 224, depth)?;
9683 self.15.encode(encoder, offset + 240, depth)?;
9684 self.16.encode(encoder, offset + 256, depth)?;
9685 self.17.encode(encoder, offset + 272, depth)?;
9686 self.18.encode(encoder, offset + 288, depth)?;
9687 self.19.encode(encoder, offset + 304, depth)?;
9688 self.20.encode(encoder, offset + 320, depth)?;
9689 self.21.encode(encoder, offset + 336, depth)?;
9690 self.22.encode(encoder, offset + 352, depth)?;
9691 self.23.encode(encoder, offset + 368, depth)?;
9692 self.24.encode(encoder, offset + 384, depth)?;
9693 self.25.encode(encoder, offset + 400, depth)?;
9694 Ok(())
9695 }
9696 }
9697
9698 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for VectorsStruct {
9699 #[inline(always)]
9700 fn new_empty() -> Self {
9701 Self {
9702 bools: fidl::new_empty!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9703 int8s: fidl::new_empty!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9704 int16s: fidl::new_empty!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9705 int32s: fidl::new_empty!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9706 int64s: fidl::new_empty!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9707 uint8s: fidl::new_empty!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9708 uint16s: fidl::new_empty!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9709 uint32s: fidl::new_empty!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9710 uint64s: fidl::new_empty!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9711 float32s: fidl::new_empty!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9712 float64s: fidl::new_empty!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9713 enums: fidl::new_empty!(fidl::encoding::Vector<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9714 bits: fidl::new_empty!(fidl::encoding::Vector<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9715 handles: fidl::new_empty!(
9716 fidl::encoding::Vector<
9717 fidl::encoding::HandleType<
9718 fidl::Handle,
9719 { fidl::ObjectType::NONE.into_raw() },
9720 2147483648,
9721 >,
9722 3,
9723 >,
9724 fidl::encoding::DefaultFuchsiaResourceDialect
9725 ),
9726 nullable_handles: fidl::new_empty!(
9727 fidl::encoding::Vector<
9728 fidl::encoding::Optional<
9729 fidl::encoding::HandleType<
9730 fidl::Handle,
9731 { fidl::ObjectType::NONE.into_raw() },
9732 2147483648,
9733 >,
9734 >,
9735 3,
9736 >,
9737 fidl::encoding::DefaultFuchsiaResourceDialect
9738 ),
9739 strings: fidl::new_empty!(fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9740 nullable_strings: fidl::new_empty!(
9741 fidl::encoding::Vector<
9742 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9743 3,
9744 >,
9745 fidl::encoding::DefaultFuchsiaResourceDialect
9746 ),
9747 structs: fidl::new_empty!(fidl::encoding::Vector<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9748 nullable_structs: fidl::new_empty!(
9749 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9750 fidl::encoding::DefaultFuchsiaResourceDialect
9751 ),
9752 unions: fidl::new_empty!(fidl::encoding::Vector<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9753 nullable_unions: fidl::new_empty!(
9754 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9755 fidl::encoding::DefaultFuchsiaResourceDialect
9756 ),
9757 arrays: fidl::new_empty!(
9758 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9759 fidl::encoding::DefaultFuchsiaResourceDialect
9760 ),
9761 vectors: fidl::new_empty!(
9762 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9763 fidl::encoding::DefaultFuchsiaResourceDialect
9764 ),
9765 nullable_vectors: fidl::new_empty!(
9766 fidl::encoding::Vector<
9767 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9768 3,
9769 >,
9770 fidl::encoding::DefaultFuchsiaResourceDialect
9771 ),
9772 tables: fidl::new_empty!(fidl::encoding::Vector<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9773 xunions: fidl::new_empty!(fidl::encoding::Vector<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9774 }
9775 }
9776
9777 #[inline]
9778 unsafe fn decode(
9779 &mut self,
9780 decoder: &mut fidl::encoding::Decoder<
9781 '_,
9782 fidl::encoding::DefaultFuchsiaResourceDialect,
9783 >,
9784 offset: usize,
9785 _depth: fidl::encoding::Depth,
9786 ) -> fidl::Result<()> {
9787 decoder.debug_check_bounds::<Self>(offset);
9788 fidl::decode!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bools, decoder, offset + 0, _depth)?;
9790 fidl::decode!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int8s, decoder, offset + 16, _depth)?;
9791 fidl::decode!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int16s, decoder, offset + 32, _depth)?;
9792 fidl::decode!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int32s, decoder, offset + 48, _depth)?;
9793 fidl::decode!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int64s, decoder, offset + 64, _depth)?;
9794 fidl::decode!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint8s, decoder, offset + 80, _depth)?;
9795 fidl::decode!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint16s, decoder, offset + 96, _depth)?;
9796 fidl::decode!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint32s, decoder, offset + 112, _depth)?;
9797 fidl::decode!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint64s, decoder, offset + 128, _depth)?;
9798 fidl::decode!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float32s, decoder, offset + 144, _depth)?;
9799 fidl::decode!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float64s, decoder, offset + 160, _depth)?;
9800 fidl::decode!(fidl::encoding::Vector<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.enums, decoder, offset + 176, _depth)?;
9801 fidl::decode!(fidl::encoding::Vector<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bits, decoder, offset + 192, _depth)?;
9802 fidl::decode!(
9803 fidl::encoding::Vector<
9804 fidl::encoding::HandleType<
9805 fidl::Handle,
9806 { fidl::ObjectType::NONE.into_raw() },
9807 2147483648,
9808 >,
9809 3,
9810 >,
9811 fidl::encoding::DefaultFuchsiaResourceDialect,
9812 &mut self.handles,
9813 decoder,
9814 offset + 208,
9815 _depth
9816 )?;
9817 fidl::decode!(
9818 fidl::encoding::Vector<
9819 fidl::encoding::Optional<
9820 fidl::encoding::HandleType<
9821 fidl::Handle,
9822 { fidl::ObjectType::NONE.into_raw() },
9823 2147483648,
9824 >,
9825 >,
9826 3,
9827 >,
9828 fidl::encoding::DefaultFuchsiaResourceDialect,
9829 &mut self.nullable_handles,
9830 decoder,
9831 offset + 224,
9832 _depth
9833 )?;
9834 fidl::decode!(fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.strings, decoder, offset + 240, _depth)?;
9835 fidl::decode!(
9836 fidl::encoding::Vector<
9837 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9838 3,
9839 >,
9840 fidl::encoding::DefaultFuchsiaResourceDialect,
9841 &mut self.nullable_strings,
9842 decoder,
9843 offset + 256,
9844 _depth
9845 )?;
9846 fidl::decode!(fidl::encoding::Vector<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.structs, decoder, offset + 272, _depth)?;
9847 fidl::decode!(
9848 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9849 fidl::encoding::DefaultFuchsiaResourceDialect,
9850 &mut self.nullable_structs,
9851 decoder,
9852 offset + 288,
9853 _depth
9854 )?;
9855 fidl::decode!(fidl::encoding::Vector<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.unions, decoder, offset + 304, _depth)?;
9856 fidl::decode!(
9857 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9858 fidl::encoding::DefaultFuchsiaResourceDialect,
9859 &mut self.nullable_unions,
9860 decoder,
9861 offset + 320,
9862 _depth
9863 )?;
9864 fidl::decode!(
9865 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9866 fidl::encoding::DefaultFuchsiaResourceDialect,
9867 &mut self.arrays,
9868 decoder,
9869 offset + 336,
9870 _depth
9871 )?;
9872 fidl::decode!(
9873 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9874 fidl::encoding::DefaultFuchsiaResourceDialect,
9875 &mut self.vectors,
9876 decoder,
9877 offset + 352,
9878 _depth
9879 )?;
9880 fidl::decode!(
9881 fidl::encoding::Vector<
9882 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9883 3,
9884 >,
9885 fidl::encoding::DefaultFuchsiaResourceDialect,
9886 &mut self.nullable_vectors,
9887 decoder,
9888 offset + 368,
9889 _depth
9890 )?;
9891 fidl::decode!(fidl::encoding::Vector<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.tables, decoder, offset + 384, _depth)?;
9892 fidl::decode!(fidl::encoding::Vector<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.xunions, decoder, offset + 400, _depth)?;
9893 Ok(())
9894 }
9895 }
9896
9897 impl fidl::encoding::ResourceTypeMarker for Arrays {
9898 type Borrowed<'a> = &'a mut Self;
9899 fn take_or_borrow<'a>(
9900 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
9901 ) -> Self::Borrowed<'a> {
9902 value
9903 }
9904 }
9905
9906 unsafe impl fidl::encoding::TypeMarker for Arrays {
9907 type Owned = Self;
9908
9909 #[inline(always)]
9910 fn inline_align(_context: fidl::encoding::Context) -> usize {
9911 8
9912 }
9913
9914 #[inline(always)]
9915 fn inline_size(_context: fidl::encoding::Context) -> usize {
9916 208
9917 }
9918 }
9919
9920 unsafe impl fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>
9921 for &mut Arrays
9922 {
9923 #[inline]
9924 unsafe fn encode(
9925 self,
9926 encoder: &mut fidl::encoding::Encoder<
9927 '_,
9928 fidl::encoding::DefaultFuchsiaResourceDialect,
9929 >,
9930 offset: usize,
9931 _depth: fidl::encoding::Depth,
9932 ) -> fidl::Result<()> {
9933 encoder.debug_check_bounds::<Arrays>(offset);
9934 fidl::encoding::Encode::<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
9936 (
9937 <fidl::encoding::Array<bool, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9938 &self.b_0,
9939 ),
9940 <fidl::encoding::Array<i8, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9941 &self.i8_0,
9942 ),
9943 <fidl::encoding::Array<i16, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9944 &self.i16_0,
9945 ),
9946 <fidl::encoding::Array<i32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9947 &self.i32_0,
9948 ),
9949 <fidl::encoding::Array<i64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9950 &self.i64_0,
9951 ),
9952 <fidl::encoding::Array<u8, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9953 &self.u8_0,
9954 ),
9955 <fidl::encoding::Array<u16, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9956 &self.u16_0,
9957 ),
9958 <fidl::encoding::Array<u32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9959 &self.u32_0,
9960 ),
9961 <fidl::encoding::Array<u64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9962 &self.u64_0,
9963 ),
9964 <fidl::encoding::Array<f32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9965 &self.f32_0,
9966 ),
9967 <fidl::encoding::Array<f64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9968 &self.f64_0,
9969 ),
9970 <fidl::encoding::Array<
9971 fidl::encoding::HandleType<
9972 fidl::Handle,
9973 { fidl::ObjectType::NONE.into_raw() },
9974 2147483648,
9975 >,
9976 1,
9977 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
9978 &mut self.handle_0
9979 ),
9980 <fidl::encoding::Array<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9981 &self.b_1,
9982 ),
9983 <fidl::encoding::Array<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9984 &self.i8_1,
9985 ),
9986 <fidl::encoding::Array<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9987 &self.i16_1,
9988 ),
9989 <fidl::encoding::Array<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9990 &self.i32_1,
9991 ),
9992 <fidl::encoding::Array<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9993 &self.i64_1,
9994 ),
9995 <fidl::encoding::Array<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9996 &self.u8_1,
9997 ),
9998 <fidl::encoding::Array<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9999 &self.u16_1,
10000 ),
10001 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10002 &self.u32_1,
10003 ),
10004 <fidl::encoding::Array<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10005 &self.u64_1,
10006 ),
10007 <fidl::encoding::Array<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10008 &self.f32_1,
10009 ),
10010 <fidl::encoding::Array<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10011 &self.f64_1,
10012 ),
10013 <fidl::encoding::Array<
10014 fidl::encoding::HandleType<
10015 fidl::Handle,
10016 { fidl::ObjectType::NONE.into_raw() },
10017 2147483648,
10018 >,
10019 3,
10020 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10021 &mut self.handle_1
10022 ),
10023 ),
10024 encoder,
10025 offset,
10026 _depth,
10027 )
10028 }
10029 }
10030 unsafe impl<
10031 T0: fidl::encoding::Encode<
10032 fidl::encoding::Array<bool, 1>,
10033 fidl::encoding::DefaultFuchsiaResourceDialect,
10034 >,
10035 T1: fidl::encoding::Encode<
10036 fidl::encoding::Array<i8, 1>,
10037 fidl::encoding::DefaultFuchsiaResourceDialect,
10038 >,
10039 T2: fidl::encoding::Encode<
10040 fidl::encoding::Array<i16, 1>,
10041 fidl::encoding::DefaultFuchsiaResourceDialect,
10042 >,
10043 T3: fidl::encoding::Encode<
10044 fidl::encoding::Array<i32, 1>,
10045 fidl::encoding::DefaultFuchsiaResourceDialect,
10046 >,
10047 T4: fidl::encoding::Encode<
10048 fidl::encoding::Array<i64, 1>,
10049 fidl::encoding::DefaultFuchsiaResourceDialect,
10050 >,
10051 T5: fidl::encoding::Encode<
10052 fidl::encoding::Array<u8, 1>,
10053 fidl::encoding::DefaultFuchsiaResourceDialect,
10054 >,
10055 T6: fidl::encoding::Encode<
10056 fidl::encoding::Array<u16, 1>,
10057 fidl::encoding::DefaultFuchsiaResourceDialect,
10058 >,
10059 T7: fidl::encoding::Encode<
10060 fidl::encoding::Array<u32, 1>,
10061 fidl::encoding::DefaultFuchsiaResourceDialect,
10062 >,
10063 T8: fidl::encoding::Encode<
10064 fidl::encoding::Array<u64, 1>,
10065 fidl::encoding::DefaultFuchsiaResourceDialect,
10066 >,
10067 T9: fidl::encoding::Encode<
10068 fidl::encoding::Array<f32, 1>,
10069 fidl::encoding::DefaultFuchsiaResourceDialect,
10070 >,
10071 T10: fidl::encoding::Encode<
10072 fidl::encoding::Array<f64, 1>,
10073 fidl::encoding::DefaultFuchsiaResourceDialect,
10074 >,
10075 T11: fidl::encoding::Encode<
10076 fidl::encoding::Array<
10077 fidl::encoding::HandleType<
10078 fidl::Handle,
10079 { fidl::ObjectType::NONE.into_raw() },
10080 2147483648,
10081 >,
10082 1,
10083 >,
10084 fidl::encoding::DefaultFuchsiaResourceDialect,
10085 >,
10086 T12: fidl::encoding::Encode<
10087 fidl::encoding::Array<bool, 3>,
10088 fidl::encoding::DefaultFuchsiaResourceDialect,
10089 >,
10090 T13: fidl::encoding::Encode<
10091 fidl::encoding::Array<i8, 3>,
10092 fidl::encoding::DefaultFuchsiaResourceDialect,
10093 >,
10094 T14: fidl::encoding::Encode<
10095 fidl::encoding::Array<i16, 3>,
10096 fidl::encoding::DefaultFuchsiaResourceDialect,
10097 >,
10098 T15: fidl::encoding::Encode<
10099 fidl::encoding::Array<i32, 3>,
10100 fidl::encoding::DefaultFuchsiaResourceDialect,
10101 >,
10102 T16: fidl::encoding::Encode<
10103 fidl::encoding::Array<i64, 3>,
10104 fidl::encoding::DefaultFuchsiaResourceDialect,
10105 >,
10106 T17: fidl::encoding::Encode<
10107 fidl::encoding::Array<u8, 3>,
10108 fidl::encoding::DefaultFuchsiaResourceDialect,
10109 >,
10110 T18: fidl::encoding::Encode<
10111 fidl::encoding::Array<u16, 3>,
10112 fidl::encoding::DefaultFuchsiaResourceDialect,
10113 >,
10114 T19: fidl::encoding::Encode<
10115 fidl::encoding::Array<u32, 3>,
10116 fidl::encoding::DefaultFuchsiaResourceDialect,
10117 >,
10118 T20: fidl::encoding::Encode<
10119 fidl::encoding::Array<u64, 3>,
10120 fidl::encoding::DefaultFuchsiaResourceDialect,
10121 >,
10122 T21: fidl::encoding::Encode<
10123 fidl::encoding::Array<f32, 3>,
10124 fidl::encoding::DefaultFuchsiaResourceDialect,
10125 >,
10126 T22: fidl::encoding::Encode<
10127 fidl::encoding::Array<f64, 3>,
10128 fidl::encoding::DefaultFuchsiaResourceDialect,
10129 >,
10130 T23: fidl::encoding::Encode<
10131 fidl::encoding::Array<
10132 fidl::encoding::HandleType<
10133 fidl::Handle,
10134 { fidl::ObjectType::NONE.into_raw() },
10135 2147483648,
10136 >,
10137 3,
10138 >,
10139 fidl::encoding::DefaultFuchsiaResourceDialect,
10140 >,
10141 > fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>
10142 for (
10143 T0,
10144 T1,
10145 T2,
10146 T3,
10147 T4,
10148 T5,
10149 T6,
10150 T7,
10151 T8,
10152 T9,
10153 T10,
10154 T11,
10155 T12,
10156 T13,
10157 T14,
10158 T15,
10159 T16,
10160 T17,
10161 T18,
10162 T19,
10163 T20,
10164 T21,
10165 T22,
10166 T23,
10167 )
10168 {
10169 #[inline]
10170 unsafe fn encode(
10171 self,
10172 encoder: &mut fidl::encoding::Encoder<
10173 '_,
10174 fidl::encoding::DefaultFuchsiaResourceDialect,
10175 >,
10176 offset: usize,
10177 depth: fidl::encoding::Depth,
10178 ) -> fidl::Result<()> {
10179 encoder.debug_check_bounds::<Arrays>(offset);
10180 unsafe {
10183 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
10184 (ptr as *mut u64).write_unaligned(0);
10185 }
10186 unsafe {
10187 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(32);
10188 (ptr as *mut u64).write_unaligned(0);
10189 }
10190 unsafe {
10191 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(72);
10192 (ptr as *mut u64).write_unaligned(0);
10193 }
10194 unsafe {
10195 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(104);
10196 (ptr as *mut u64).write_unaligned(0);
10197 }
10198 unsafe {
10199 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(112);
10200 (ptr as *mut u64).write_unaligned(0);
10201 }
10202 unsafe {
10203 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(160);
10204 (ptr as *mut u64).write_unaligned(0);
10205 }
10206 unsafe {
10207 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(200);
10208 (ptr as *mut u64).write_unaligned(0);
10209 }
10210 self.0.encode(encoder, offset + 0, depth)?;
10212 self.1.encode(encoder, offset + 1, depth)?;
10213 self.2.encode(encoder, offset + 2, depth)?;
10214 self.3.encode(encoder, offset + 4, depth)?;
10215 self.4.encode(encoder, offset + 8, depth)?;
10216 self.5.encode(encoder, offset + 16, depth)?;
10217 self.6.encode(encoder, offset + 18, depth)?;
10218 self.7.encode(encoder, offset + 20, depth)?;
10219 self.8.encode(encoder, offset + 24, depth)?;
10220 self.9.encode(encoder, offset + 32, depth)?;
10221 self.10.encode(encoder, offset + 40, depth)?;
10222 self.11.encode(encoder, offset + 48, depth)?;
10223 self.12.encode(encoder, offset + 52, depth)?;
10224 self.13.encode(encoder, offset + 55, depth)?;
10225 self.14.encode(encoder, offset + 58, depth)?;
10226 self.15.encode(encoder, offset + 64, depth)?;
10227 self.16.encode(encoder, offset + 80, depth)?;
10228 self.17.encode(encoder, offset + 104, depth)?;
10229 self.18.encode(encoder, offset + 108, depth)?;
10230 self.19.encode(encoder, offset + 116, depth)?;
10231 self.20.encode(encoder, offset + 128, depth)?;
10232 self.21.encode(encoder, offset + 152, depth)?;
10233 self.22.encode(encoder, offset + 168, depth)?;
10234 self.23.encode(encoder, offset + 192, depth)?;
10235 Ok(())
10236 }
10237 }
10238
10239 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays {
10240 #[inline(always)]
10241 fn new_empty() -> Self {
10242 Self {
10243 b_0: fidl::new_empty!(fidl::encoding::Array<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10244 i8_0: fidl::new_empty!(fidl::encoding::Array<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10245 i16_0: fidl::new_empty!(fidl::encoding::Array<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10246 i32_0: fidl::new_empty!(fidl::encoding::Array<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10247 i64_0: fidl::new_empty!(fidl::encoding::Array<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10248 u8_0: fidl::new_empty!(fidl::encoding::Array<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10249 u16_0: fidl::new_empty!(fidl::encoding::Array<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10250 u32_0: fidl::new_empty!(fidl::encoding::Array<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10251 u64_0: fidl::new_empty!(fidl::encoding::Array<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10252 f32_0: fidl::new_empty!(fidl::encoding::Array<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10253 f64_0: fidl::new_empty!(fidl::encoding::Array<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10254 handle_0: fidl::new_empty!(
10255 fidl::encoding::Array<
10256 fidl::encoding::HandleType<
10257 fidl::Handle,
10258 { fidl::ObjectType::NONE.into_raw() },
10259 2147483648,
10260 >,
10261 1,
10262 >,
10263 fidl::encoding::DefaultFuchsiaResourceDialect
10264 ),
10265 b_1: fidl::new_empty!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10266 i8_1: fidl::new_empty!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10267 i16_1: fidl::new_empty!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10268 i32_1: fidl::new_empty!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10269 i64_1: fidl::new_empty!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10270 u8_1: fidl::new_empty!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10271 u16_1: fidl::new_empty!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10272 u32_1: fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10273 u64_1: fidl::new_empty!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10274 f32_1: fidl::new_empty!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10275 f64_1: fidl::new_empty!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10276 handle_1: fidl::new_empty!(
10277 fidl::encoding::Array<
10278 fidl::encoding::HandleType<
10279 fidl::Handle,
10280 { fidl::ObjectType::NONE.into_raw() },
10281 2147483648,
10282 >,
10283 3,
10284 >,
10285 fidl::encoding::DefaultFuchsiaResourceDialect
10286 ),
10287 }
10288 }
10289
10290 #[inline]
10291 unsafe fn decode(
10292 &mut self,
10293 decoder: &mut fidl::encoding::Decoder<
10294 '_,
10295 fidl::encoding::DefaultFuchsiaResourceDialect,
10296 >,
10297 offset: usize,
10298 _depth: fidl::encoding::Depth,
10299 ) -> fidl::Result<()> {
10300 decoder.debug_check_bounds::<Self>(offset);
10301 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
10303 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10304 let mask = 0xff00u64;
10305 let maskedval = padval & mask;
10306 if maskedval != 0 {
10307 return Err(fidl::Error::NonZeroPadding {
10308 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
10309 });
10310 }
10311 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(32) };
10312 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10313 let mask = 0xffffffff00000000u64;
10314 let maskedval = padval & mask;
10315 if maskedval != 0 {
10316 return Err(fidl::Error::NonZeroPadding {
10317 padding_start: offset + 32 + ((mask as u64).trailing_zeros() / 8) as usize,
10318 });
10319 }
10320 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(72) };
10321 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10322 let mask = 0xffffffff00000000u64;
10323 let maskedval = padval & mask;
10324 if maskedval != 0 {
10325 return Err(fidl::Error::NonZeroPadding {
10326 padding_start: offset + 72 + ((mask as u64).trailing_zeros() / 8) as usize,
10327 });
10328 }
10329 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(104) };
10330 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10331 let mask = 0xff000000u64;
10332 let maskedval = padval & mask;
10333 if maskedval != 0 {
10334 return Err(fidl::Error::NonZeroPadding {
10335 padding_start: offset + 104 + ((mask as u64).trailing_zeros() / 8) as usize,
10336 });
10337 }
10338 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(112) };
10339 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10340 let mask = 0xffff0000u64;
10341 let maskedval = padval & mask;
10342 if maskedval != 0 {
10343 return Err(fidl::Error::NonZeroPadding {
10344 padding_start: offset + 112 + ((mask as u64).trailing_zeros() / 8) as usize,
10345 });
10346 }
10347 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(160) };
10348 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10349 let mask = 0xffffffff00000000u64;
10350 let maskedval = padval & mask;
10351 if maskedval != 0 {
10352 return Err(fidl::Error::NonZeroPadding {
10353 padding_start: offset + 160 + ((mask as u64).trailing_zeros() / 8) as usize,
10354 });
10355 }
10356 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(200) };
10357 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10358 let mask = 0xffffffff00000000u64;
10359 let maskedval = padval & mask;
10360 if maskedval != 0 {
10361 return Err(fidl::Error::NonZeroPadding {
10362 padding_start: offset + 200 + ((mask as u64).trailing_zeros() / 8) as usize,
10363 });
10364 }
10365 fidl::decode!(fidl::encoding::Array<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_0, decoder, offset + 0, _depth)?;
10366 fidl::decode!(fidl::encoding::Array<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_0, decoder, offset + 1, _depth)?;
10367 fidl::decode!(fidl::encoding::Array<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_0, decoder, offset + 2, _depth)?;
10368 fidl::decode!(fidl::encoding::Array<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_0, decoder, offset + 4, _depth)?;
10369 fidl::decode!(fidl::encoding::Array<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_0, decoder, offset + 8, _depth)?;
10370 fidl::decode!(fidl::encoding::Array<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_0, decoder, offset + 16, _depth)?;
10371 fidl::decode!(fidl::encoding::Array<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_0, decoder, offset + 18, _depth)?;
10372 fidl::decode!(fidl::encoding::Array<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_0, decoder, offset + 20, _depth)?;
10373 fidl::decode!(fidl::encoding::Array<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_0, decoder, offset + 24, _depth)?;
10374 fidl::decode!(fidl::encoding::Array<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_0, decoder, offset + 32, _depth)?;
10375 fidl::decode!(fidl::encoding::Array<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_0, decoder, offset + 40, _depth)?;
10376 fidl::decode!(
10377 fidl::encoding::Array<
10378 fidl::encoding::HandleType<
10379 fidl::Handle,
10380 { fidl::ObjectType::NONE.into_raw() },
10381 2147483648,
10382 >,
10383 1,
10384 >,
10385 fidl::encoding::DefaultFuchsiaResourceDialect,
10386 &mut self.handle_0,
10387 decoder,
10388 offset + 48,
10389 _depth
10390 )?;
10391 fidl::decode!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_1, decoder, offset + 52, _depth)?;
10392 fidl::decode!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_1, decoder, offset + 55, _depth)?;
10393 fidl::decode!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_1, decoder, offset + 58, _depth)?;
10394 fidl::decode!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_1, decoder, offset + 64, _depth)?;
10395 fidl::decode!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_1, decoder, offset + 80, _depth)?;
10396 fidl::decode!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_1, decoder, offset + 104, _depth)?;
10397 fidl::decode!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_1, decoder, offset + 108, _depth)?;
10398 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_1, decoder, offset + 116, _depth)?;
10399 fidl::decode!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_1, decoder, offset + 128, _depth)?;
10400 fidl::decode!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_1, decoder, offset + 152, _depth)?;
10401 fidl::decode!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_1, decoder, offset + 168, _depth)?;
10402 fidl::decode!(
10403 fidl::encoding::Array<
10404 fidl::encoding::HandleType<
10405 fidl::Handle,
10406 { fidl::ObjectType::NONE.into_raw() },
10407 2147483648,
10408 >,
10409 3,
10410 >,
10411 fidl::encoding::DefaultFuchsiaResourceDialect,
10412 &mut self.handle_1,
10413 decoder,
10414 offset + 192,
10415 _depth
10416 )?;
10417 Ok(())
10418 }
10419 }
10420
10421 impl fidl::encoding::ResourceTypeMarker for Arrays2d {
10422 type Borrowed<'a> = &'a mut Self;
10423 fn take_or_borrow<'a>(
10424 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
10425 ) -> Self::Borrowed<'a> {
10426 value
10427 }
10428 }
10429
10430 unsafe impl fidl::encoding::TypeMarker for Arrays2d {
10431 type Owned = Self;
10432
10433 #[inline(always)]
10434 fn inline_align(_context: fidl::encoding::Context) -> usize {
10435 8
10436 }
10437
10438 #[inline(always)]
10439 fn inline_size(_context: fidl::encoding::Context) -> usize {
10440 288
10441 }
10442 }
10443
10444 unsafe impl fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>
10445 for &mut Arrays2d
10446 {
10447 #[inline]
10448 unsafe fn encode(
10449 self,
10450 encoder: &mut fidl::encoding::Encoder<
10451 '_,
10452 fidl::encoding::DefaultFuchsiaResourceDialect,
10453 >,
10454 offset: usize,
10455 _depth: fidl::encoding::Depth,
10456 ) -> fidl::Result<()> {
10457 encoder.debug_check_bounds::<Arrays2d>(offset);
10458 fidl::encoding::Encode::<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
10460 (
10461 <fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b),
10462 <fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8),
10463 <fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16),
10464 <fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32),
10465 <fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64),
10466 <fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8),
10467 <fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16),
10468 <fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32),
10469 <fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64),
10470 <fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32),
10471 <fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64),
10472 <fidl::encoding::Array<fidl::encoding::Array<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_handle),
10473 ),
10474 encoder, offset, _depth
10475 )
10476 }
10477 }
10478 unsafe impl<
10479 T0: fidl::encoding::Encode<
10480 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10481 fidl::encoding::DefaultFuchsiaResourceDialect,
10482 >,
10483 T1: fidl::encoding::Encode<
10484 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10485 fidl::encoding::DefaultFuchsiaResourceDialect,
10486 >,
10487 T2: fidl::encoding::Encode<
10488 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10489 fidl::encoding::DefaultFuchsiaResourceDialect,
10490 >,
10491 T3: fidl::encoding::Encode<
10492 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10493 fidl::encoding::DefaultFuchsiaResourceDialect,
10494 >,
10495 T4: fidl::encoding::Encode<
10496 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10497 fidl::encoding::DefaultFuchsiaResourceDialect,
10498 >,
10499 T5: fidl::encoding::Encode<
10500 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10501 fidl::encoding::DefaultFuchsiaResourceDialect,
10502 >,
10503 T6: fidl::encoding::Encode<
10504 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10505 fidl::encoding::DefaultFuchsiaResourceDialect,
10506 >,
10507 T7: fidl::encoding::Encode<
10508 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10509 fidl::encoding::DefaultFuchsiaResourceDialect,
10510 >,
10511 T8: fidl::encoding::Encode<
10512 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10513 fidl::encoding::DefaultFuchsiaResourceDialect,
10514 >,
10515 T9: fidl::encoding::Encode<
10516 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10517 fidl::encoding::DefaultFuchsiaResourceDialect,
10518 >,
10519 T10: fidl::encoding::Encode<
10520 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10521 fidl::encoding::DefaultFuchsiaResourceDialect,
10522 >,
10523 T11: fidl::encoding::Encode<
10524 fidl::encoding::Array<
10525 fidl::encoding::Array<
10526 fidl::encoding::HandleType<
10527 fidl::Handle,
10528 { fidl::ObjectType::NONE.into_raw() },
10529 2147483648,
10530 >,
10531 2,
10532 >,
10533 3,
10534 >,
10535 fidl::encoding::DefaultFuchsiaResourceDialect,
10536 >,
10537 > fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>
10538 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
10539 {
10540 #[inline]
10541 unsafe fn encode(
10542 self,
10543 encoder: &mut fidl::encoding::Encoder<
10544 '_,
10545 fidl::encoding::DefaultFuchsiaResourceDialect,
10546 >,
10547 offset: usize,
10548 depth: fidl::encoding::Depth,
10549 ) -> fidl::Result<()> {
10550 encoder.debug_check_bounds::<Arrays2d>(offset);
10551 unsafe {
10554 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(112);
10555 (ptr as *mut u64).write_unaligned(0);
10556 }
10557 unsafe {
10558 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(136);
10559 (ptr as *mut u64).write_unaligned(0);
10560 }
10561 self.0.encode(encoder, offset + 0, depth)?;
10563 self.1.encode(encoder, offset + 6, depth)?;
10564 self.2.encode(encoder, offset + 12, depth)?;
10565 self.3.encode(encoder, offset + 24, depth)?;
10566 self.4.encode(encoder, offset + 48, depth)?;
10567 self.5.encode(encoder, offset + 96, depth)?;
10568 self.6.encode(encoder, offset + 102, depth)?;
10569 self.7.encode(encoder, offset + 116, depth)?;
10570 self.8.encode(encoder, offset + 144, depth)?;
10571 self.9.encode(encoder, offset + 192, depth)?;
10572 self.10.encode(encoder, offset + 216, depth)?;
10573 self.11.encode(encoder, offset + 264, depth)?;
10574 Ok(())
10575 }
10576 }
10577
10578 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays2d {
10579 #[inline(always)]
10580 fn new_empty() -> Self {
10581 Self {
10582 b: fidl::new_empty!(
10583 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10584 fidl::encoding::DefaultFuchsiaResourceDialect
10585 ),
10586 i8: fidl::new_empty!(
10587 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10588 fidl::encoding::DefaultFuchsiaResourceDialect
10589 ),
10590 i16: fidl::new_empty!(
10591 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10592 fidl::encoding::DefaultFuchsiaResourceDialect
10593 ),
10594 i32: fidl::new_empty!(
10595 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10596 fidl::encoding::DefaultFuchsiaResourceDialect
10597 ),
10598 i64: fidl::new_empty!(
10599 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10600 fidl::encoding::DefaultFuchsiaResourceDialect
10601 ),
10602 u8: fidl::new_empty!(
10603 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10604 fidl::encoding::DefaultFuchsiaResourceDialect
10605 ),
10606 u16: fidl::new_empty!(
10607 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10608 fidl::encoding::DefaultFuchsiaResourceDialect
10609 ),
10610 u32: fidl::new_empty!(
10611 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10612 fidl::encoding::DefaultFuchsiaResourceDialect
10613 ),
10614 u64: fidl::new_empty!(
10615 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10616 fidl::encoding::DefaultFuchsiaResourceDialect
10617 ),
10618 f32: fidl::new_empty!(
10619 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10620 fidl::encoding::DefaultFuchsiaResourceDialect
10621 ),
10622 f64: fidl::new_empty!(
10623 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10624 fidl::encoding::DefaultFuchsiaResourceDialect
10625 ),
10626 handle_handle: fidl::new_empty!(
10627 fidl::encoding::Array<
10628 fidl::encoding::Array<
10629 fidl::encoding::HandleType<
10630 fidl::Handle,
10631 { fidl::ObjectType::NONE.into_raw() },
10632 2147483648,
10633 >,
10634 2,
10635 >,
10636 3,
10637 >,
10638 fidl::encoding::DefaultFuchsiaResourceDialect
10639 ),
10640 }
10641 }
10642
10643 #[inline]
10644 unsafe fn decode(
10645 &mut self,
10646 decoder: &mut fidl::encoding::Decoder<
10647 '_,
10648 fidl::encoding::DefaultFuchsiaResourceDialect,
10649 >,
10650 offset: usize,
10651 _depth: fidl::encoding::Depth,
10652 ) -> fidl::Result<()> {
10653 decoder.debug_check_bounds::<Self>(offset);
10654 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(112) };
10656 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10657 let mask = 0xffff0000u64;
10658 let maskedval = padval & mask;
10659 if maskedval != 0 {
10660 return Err(fidl::Error::NonZeroPadding {
10661 padding_start: offset + 112 + ((mask as u64).trailing_zeros() / 8) as usize,
10662 });
10663 }
10664 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(136) };
10665 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10666 let mask = 0xffffffff00000000u64;
10667 let maskedval = padval & mask;
10668 if maskedval != 0 {
10669 return Err(fidl::Error::NonZeroPadding {
10670 padding_start: offset + 136 + ((mask as u64).trailing_zeros() / 8) as usize,
10671 });
10672 }
10673 fidl::decode!(
10674 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10675 fidl::encoding::DefaultFuchsiaResourceDialect,
10676 &mut self.b,
10677 decoder,
10678 offset + 0,
10679 _depth
10680 )?;
10681 fidl::decode!(
10682 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10683 fidl::encoding::DefaultFuchsiaResourceDialect,
10684 &mut self.i8,
10685 decoder,
10686 offset + 6,
10687 _depth
10688 )?;
10689 fidl::decode!(
10690 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10691 fidl::encoding::DefaultFuchsiaResourceDialect,
10692 &mut self.i16,
10693 decoder,
10694 offset + 12,
10695 _depth
10696 )?;
10697 fidl::decode!(
10698 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10699 fidl::encoding::DefaultFuchsiaResourceDialect,
10700 &mut self.i32,
10701 decoder,
10702 offset + 24,
10703 _depth
10704 )?;
10705 fidl::decode!(
10706 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10707 fidl::encoding::DefaultFuchsiaResourceDialect,
10708 &mut self.i64,
10709 decoder,
10710 offset + 48,
10711 _depth
10712 )?;
10713 fidl::decode!(
10714 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10715 fidl::encoding::DefaultFuchsiaResourceDialect,
10716 &mut self.u8,
10717 decoder,
10718 offset + 96,
10719 _depth
10720 )?;
10721 fidl::decode!(
10722 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10723 fidl::encoding::DefaultFuchsiaResourceDialect,
10724 &mut self.u16,
10725 decoder,
10726 offset + 102,
10727 _depth
10728 )?;
10729 fidl::decode!(
10730 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10731 fidl::encoding::DefaultFuchsiaResourceDialect,
10732 &mut self.u32,
10733 decoder,
10734 offset + 116,
10735 _depth
10736 )?;
10737 fidl::decode!(
10738 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10739 fidl::encoding::DefaultFuchsiaResourceDialect,
10740 &mut self.u64,
10741 decoder,
10742 offset + 144,
10743 _depth
10744 )?;
10745 fidl::decode!(
10746 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10747 fidl::encoding::DefaultFuchsiaResourceDialect,
10748 &mut self.f32,
10749 decoder,
10750 offset + 192,
10751 _depth
10752 )?;
10753 fidl::decode!(
10754 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10755 fidl::encoding::DefaultFuchsiaResourceDialect,
10756 &mut self.f64,
10757 decoder,
10758 offset + 216,
10759 _depth
10760 )?;
10761 fidl::decode!(
10762 fidl::encoding::Array<
10763 fidl::encoding::Array<
10764 fidl::encoding::HandleType<
10765 fidl::Handle,
10766 { fidl::ObjectType::NONE.into_raw() },
10767 2147483648,
10768 >,
10769 2,
10770 >,
10771 3,
10772 >,
10773 fidl::encoding::DefaultFuchsiaResourceDialect,
10774 &mut self.handle_handle,
10775 decoder,
10776 offset + 264,
10777 _depth
10778 )?;
10779 Ok(())
10780 }
10781 }
10782
10783 impl fidl::encoding::ResourceTypeMarker for Handles {
10784 type Borrowed<'a> = &'a mut Self;
10785 fn take_or_borrow<'a>(
10786 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
10787 ) -> Self::Borrowed<'a> {
10788 value
10789 }
10790 }
10791
10792 unsafe impl fidl::encoding::TypeMarker for Handles {
10793 type Owned = Self;
10794
10795 #[inline(always)]
10796 fn inline_align(_context: fidl::encoding::Context) -> usize {
10797 4
10798 }
10799
10800 #[inline(always)]
10801 fn inline_size(_context: fidl::encoding::Context) -> usize {
10802 108
10803 }
10804 }
10805
10806 unsafe impl fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>
10807 for &mut Handles
10808 {
10809 #[inline]
10810 unsafe fn encode(
10811 self,
10812 encoder: &mut fidl::encoding::Encoder<
10813 '_,
10814 fidl::encoding::DefaultFuchsiaResourceDialect,
10815 >,
10816 offset: usize,
10817 _depth: fidl::encoding::Depth,
10818 ) -> fidl::Result<()> {
10819 encoder.debug_check_bounds::<Handles>(offset);
10820 fidl::encoding::Encode::<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
10822 (
10823 <fidl::encoding::HandleType<
10824 fidl::Handle,
10825 { fidl::ObjectType::NONE.into_raw() },
10826 2147483648,
10827 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10828 &mut self.handle_handle,
10829 ),
10830 <fidl::encoding::HandleType<
10831 fidl::Process,
10832 { fidl::ObjectType::PROCESS.into_raw() },
10833 2147483648,
10834 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10835 &mut self.process_handle,
10836 ),
10837 <fidl::encoding::HandleType<
10838 fidl::Thread,
10839 { fidl::ObjectType::THREAD.into_raw() },
10840 2147483648,
10841 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10842 &mut self.thread_handle,
10843 ),
10844 <fidl::encoding::HandleType<
10845 fidl::Vmo,
10846 { fidl::ObjectType::VMO.into_raw() },
10847 2147483648,
10848 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10849 &mut self.vmo_handle
10850 ),
10851 <fidl::encoding::HandleType<
10852 fidl::Event,
10853 { fidl::ObjectType::EVENT.into_raw() },
10854 2147483648,
10855 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10856 &mut self.event_handle,
10857 ),
10858 <fidl::encoding::HandleType<
10859 fidl::Port,
10860 { fidl::ObjectType::PORT.into_raw() },
10861 2147483648,
10862 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10863 &mut self.port_handle
10864 ),
10865 <fidl::encoding::HandleType<
10866 fidl::Socket,
10867 { fidl::ObjectType::SOCKET.into_raw() },
10868 2147483648,
10869 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10870 &mut self.socket_handle,
10871 ),
10872 <fidl::encoding::HandleType<
10873 fidl::EventPair,
10874 { fidl::ObjectType::EVENTPAIR.into_raw() },
10875 2147483648,
10876 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10877 &mut self.eventpair_handle,
10878 ),
10879 <fidl::encoding::HandleType<
10880 fidl::Job,
10881 { fidl::ObjectType::JOB.into_raw() },
10882 2147483648,
10883 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10884 &mut self.job_handle
10885 ),
10886 <fidl::encoding::HandleType<
10887 fidl::Vmar,
10888 { fidl::ObjectType::VMAR.into_raw() },
10889 2147483648,
10890 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10891 &mut self.vmar_handle
10892 ),
10893 <fidl::encoding::HandleType<
10894 fidl::Fifo,
10895 { fidl::ObjectType::FIFO.into_raw() },
10896 2147483648,
10897 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10898 &mut self.fifo_handle
10899 ),
10900 <fidl::encoding::HandleType<
10901 fidl::Timer,
10902 { fidl::ObjectType::TIMER.into_raw() },
10903 2147483648,
10904 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10905 &mut self.timer_handle,
10906 ),
10907 <fidl::encoding::Optional<
10908 fidl::encoding::HandleType<
10909 fidl::Handle,
10910 { fidl::ObjectType::NONE.into_raw() },
10911 2147483648,
10912 >,
10913 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10914 &mut self.nullable_handle_handle,
10915 ),
10916 <fidl::encoding::Optional<
10917 fidl::encoding::HandleType<
10918 fidl::Process,
10919 { fidl::ObjectType::PROCESS.into_raw() },
10920 2147483648,
10921 >,
10922 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10923 &mut self.nullable_process_handle,
10924 ),
10925 <fidl::encoding::Optional<
10926 fidl::encoding::HandleType<
10927 fidl::Thread,
10928 { fidl::ObjectType::THREAD.into_raw() },
10929 2147483648,
10930 >,
10931 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10932 &mut self.nullable_thread_handle,
10933 ),
10934 <fidl::encoding::Optional<
10935 fidl::encoding::HandleType<
10936 fidl::Vmo,
10937 { fidl::ObjectType::VMO.into_raw() },
10938 2147483648,
10939 >,
10940 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10941 &mut self.nullable_vmo_handle,
10942 ),
10943 <fidl::encoding::Optional<
10944 fidl::encoding::HandleType<
10945 fidl::Channel,
10946 { fidl::ObjectType::CHANNEL.into_raw() },
10947 2147483648,
10948 >,
10949 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10950 &mut self.nullable_channel_handle,
10951 ),
10952 <fidl::encoding::Optional<
10953 fidl::encoding::HandleType<
10954 fidl::Event,
10955 { fidl::ObjectType::EVENT.into_raw() },
10956 2147483648,
10957 >,
10958 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10959 &mut self.nullable_event_handle,
10960 ),
10961 <fidl::encoding::Optional<
10962 fidl::encoding::HandleType<
10963 fidl::Port,
10964 { fidl::ObjectType::PORT.into_raw() },
10965 2147483648,
10966 >,
10967 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10968 &mut self.nullable_port_handle,
10969 ),
10970 <fidl::encoding::Optional<
10971 fidl::encoding::HandleType<
10972 fidl::Interrupt,
10973 { fidl::ObjectType::INTERRUPT.into_raw() },
10974 2147483648,
10975 >,
10976 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10977 &mut self.nullable_interrupt_handle,
10978 ),
10979 <fidl::encoding::Optional<
10980 fidl::encoding::HandleType<
10981 fidl::DebugLog,
10982 { fidl::ObjectType::DEBUGLOG.into_raw() },
10983 2147483648,
10984 >,
10985 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10986 &mut self.nullable_log_handle,
10987 ),
10988 <fidl::encoding::Optional<
10989 fidl::encoding::HandleType<
10990 fidl::Socket,
10991 { fidl::ObjectType::SOCKET.into_raw() },
10992 2147483648,
10993 >,
10994 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10995 &mut self.nullable_socket_handle,
10996 ),
10997 <fidl::encoding::Optional<
10998 fidl::encoding::HandleType<
10999 fidl::EventPair,
11000 { fidl::ObjectType::EVENTPAIR.into_raw() },
11001 2147483648,
11002 >,
11003 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11004 &mut self.nullable_eventpair_handle,
11005 ),
11006 <fidl::encoding::Optional<
11007 fidl::encoding::HandleType<
11008 fidl::Job,
11009 { fidl::ObjectType::JOB.into_raw() },
11010 2147483648,
11011 >,
11012 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11013 &mut self.nullable_job_handle,
11014 ),
11015 <fidl::encoding::Optional<
11016 fidl::encoding::HandleType<
11017 fidl::Vmar,
11018 { fidl::ObjectType::VMAR.into_raw() },
11019 2147483648,
11020 >,
11021 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11022 &mut self.nullable_vmar_handle,
11023 ),
11024 <fidl::encoding::Optional<
11025 fidl::encoding::HandleType<
11026 fidl::Fifo,
11027 { fidl::ObjectType::FIFO.into_raw() },
11028 2147483648,
11029 >,
11030 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11031 &mut self.nullable_fifo_handle,
11032 ),
11033 <fidl::encoding::Optional<
11034 fidl::encoding::HandleType<
11035 fidl::Timer,
11036 { fidl::ObjectType::TIMER.into_raw() },
11037 2147483648,
11038 >,
11039 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11040 &mut self.nullable_timer_handle,
11041 ),
11042 ),
11043 encoder,
11044 offset,
11045 _depth,
11046 )
11047 }
11048 }
11049 unsafe impl<
11050 T0: fidl::encoding::Encode<
11051 fidl::encoding::HandleType<
11052 fidl::Handle,
11053 { fidl::ObjectType::NONE.into_raw() },
11054 2147483648,
11055 >,
11056 fidl::encoding::DefaultFuchsiaResourceDialect,
11057 >,
11058 T1: fidl::encoding::Encode<
11059 fidl::encoding::HandleType<
11060 fidl::Process,
11061 { fidl::ObjectType::PROCESS.into_raw() },
11062 2147483648,
11063 >,
11064 fidl::encoding::DefaultFuchsiaResourceDialect,
11065 >,
11066 T2: fidl::encoding::Encode<
11067 fidl::encoding::HandleType<
11068 fidl::Thread,
11069 { fidl::ObjectType::THREAD.into_raw() },
11070 2147483648,
11071 >,
11072 fidl::encoding::DefaultFuchsiaResourceDialect,
11073 >,
11074 T3: fidl::encoding::Encode<
11075 fidl::encoding::HandleType<
11076 fidl::Vmo,
11077 { fidl::ObjectType::VMO.into_raw() },
11078 2147483648,
11079 >,
11080 fidl::encoding::DefaultFuchsiaResourceDialect,
11081 >,
11082 T4: fidl::encoding::Encode<
11083 fidl::encoding::HandleType<
11084 fidl::Event,
11085 { fidl::ObjectType::EVENT.into_raw() },
11086 2147483648,
11087 >,
11088 fidl::encoding::DefaultFuchsiaResourceDialect,
11089 >,
11090 T5: fidl::encoding::Encode<
11091 fidl::encoding::HandleType<
11092 fidl::Port,
11093 { fidl::ObjectType::PORT.into_raw() },
11094 2147483648,
11095 >,
11096 fidl::encoding::DefaultFuchsiaResourceDialect,
11097 >,
11098 T6: fidl::encoding::Encode<
11099 fidl::encoding::HandleType<
11100 fidl::Socket,
11101 { fidl::ObjectType::SOCKET.into_raw() },
11102 2147483648,
11103 >,
11104 fidl::encoding::DefaultFuchsiaResourceDialect,
11105 >,
11106 T7: fidl::encoding::Encode<
11107 fidl::encoding::HandleType<
11108 fidl::EventPair,
11109 { fidl::ObjectType::EVENTPAIR.into_raw() },
11110 2147483648,
11111 >,
11112 fidl::encoding::DefaultFuchsiaResourceDialect,
11113 >,
11114 T8: fidl::encoding::Encode<
11115 fidl::encoding::HandleType<
11116 fidl::Job,
11117 { fidl::ObjectType::JOB.into_raw() },
11118 2147483648,
11119 >,
11120 fidl::encoding::DefaultFuchsiaResourceDialect,
11121 >,
11122 T9: fidl::encoding::Encode<
11123 fidl::encoding::HandleType<
11124 fidl::Vmar,
11125 { fidl::ObjectType::VMAR.into_raw() },
11126 2147483648,
11127 >,
11128 fidl::encoding::DefaultFuchsiaResourceDialect,
11129 >,
11130 T10: fidl::encoding::Encode<
11131 fidl::encoding::HandleType<
11132 fidl::Fifo,
11133 { fidl::ObjectType::FIFO.into_raw() },
11134 2147483648,
11135 >,
11136 fidl::encoding::DefaultFuchsiaResourceDialect,
11137 >,
11138 T11: fidl::encoding::Encode<
11139 fidl::encoding::HandleType<
11140 fidl::Timer,
11141 { fidl::ObjectType::TIMER.into_raw() },
11142 2147483648,
11143 >,
11144 fidl::encoding::DefaultFuchsiaResourceDialect,
11145 >,
11146 T12: fidl::encoding::Encode<
11147 fidl::encoding::Optional<
11148 fidl::encoding::HandleType<
11149 fidl::Handle,
11150 { fidl::ObjectType::NONE.into_raw() },
11151 2147483648,
11152 >,
11153 >,
11154 fidl::encoding::DefaultFuchsiaResourceDialect,
11155 >,
11156 T13: fidl::encoding::Encode<
11157 fidl::encoding::Optional<
11158 fidl::encoding::HandleType<
11159 fidl::Process,
11160 { fidl::ObjectType::PROCESS.into_raw() },
11161 2147483648,
11162 >,
11163 >,
11164 fidl::encoding::DefaultFuchsiaResourceDialect,
11165 >,
11166 T14: fidl::encoding::Encode<
11167 fidl::encoding::Optional<
11168 fidl::encoding::HandleType<
11169 fidl::Thread,
11170 { fidl::ObjectType::THREAD.into_raw() },
11171 2147483648,
11172 >,
11173 >,
11174 fidl::encoding::DefaultFuchsiaResourceDialect,
11175 >,
11176 T15: fidl::encoding::Encode<
11177 fidl::encoding::Optional<
11178 fidl::encoding::HandleType<
11179 fidl::Vmo,
11180 { fidl::ObjectType::VMO.into_raw() },
11181 2147483648,
11182 >,
11183 >,
11184 fidl::encoding::DefaultFuchsiaResourceDialect,
11185 >,
11186 T16: fidl::encoding::Encode<
11187 fidl::encoding::Optional<
11188 fidl::encoding::HandleType<
11189 fidl::Channel,
11190 { fidl::ObjectType::CHANNEL.into_raw() },
11191 2147483648,
11192 >,
11193 >,
11194 fidl::encoding::DefaultFuchsiaResourceDialect,
11195 >,
11196 T17: fidl::encoding::Encode<
11197 fidl::encoding::Optional<
11198 fidl::encoding::HandleType<
11199 fidl::Event,
11200 { fidl::ObjectType::EVENT.into_raw() },
11201 2147483648,
11202 >,
11203 >,
11204 fidl::encoding::DefaultFuchsiaResourceDialect,
11205 >,
11206 T18: fidl::encoding::Encode<
11207 fidl::encoding::Optional<
11208 fidl::encoding::HandleType<
11209 fidl::Port,
11210 { fidl::ObjectType::PORT.into_raw() },
11211 2147483648,
11212 >,
11213 >,
11214 fidl::encoding::DefaultFuchsiaResourceDialect,
11215 >,
11216 T19: fidl::encoding::Encode<
11217 fidl::encoding::Optional<
11218 fidl::encoding::HandleType<
11219 fidl::Interrupt,
11220 { fidl::ObjectType::INTERRUPT.into_raw() },
11221 2147483648,
11222 >,
11223 >,
11224 fidl::encoding::DefaultFuchsiaResourceDialect,
11225 >,
11226 T20: fidl::encoding::Encode<
11227 fidl::encoding::Optional<
11228 fidl::encoding::HandleType<
11229 fidl::DebugLog,
11230 { fidl::ObjectType::DEBUGLOG.into_raw() },
11231 2147483648,
11232 >,
11233 >,
11234 fidl::encoding::DefaultFuchsiaResourceDialect,
11235 >,
11236 T21: fidl::encoding::Encode<
11237 fidl::encoding::Optional<
11238 fidl::encoding::HandleType<
11239 fidl::Socket,
11240 { fidl::ObjectType::SOCKET.into_raw() },
11241 2147483648,
11242 >,
11243 >,
11244 fidl::encoding::DefaultFuchsiaResourceDialect,
11245 >,
11246 T22: fidl::encoding::Encode<
11247 fidl::encoding::Optional<
11248 fidl::encoding::HandleType<
11249 fidl::EventPair,
11250 { fidl::ObjectType::EVENTPAIR.into_raw() },
11251 2147483648,
11252 >,
11253 >,
11254 fidl::encoding::DefaultFuchsiaResourceDialect,
11255 >,
11256 T23: fidl::encoding::Encode<
11257 fidl::encoding::Optional<
11258 fidl::encoding::HandleType<
11259 fidl::Job,
11260 { fidl::ObjectType::JOB.into_raw() },
11261 2147483648,
11262 >,
11263 >,
11264 fidl::encoding::DefaultFuchsiaResourceDialect,
11265 >,
11266 T24: fidl::encoding::Encode<
11267 fidl::encoding::Optional<
11268 fidl::encoding::HandleType<
11269 fidl::Vmar,
11270 { fidl::ObjectType::VMAR.into_raw() },
11271 2147483648,
11272 >,
11273 >,
11274 fidl::encoding::DefaultFuchsiaResourceDialect,
11275 >,
11276 T25: fidl::encoding::Encode<
11277 fidl::encoding::Optional<
11278 fidl::encoding::HandleType<
11279 fidl::Fifo,
11280 { fidl::ObjectType::FIFO.into_raw() },
11281 2147483648,
11282 >,
11283 >,
11284 fidl::encoding::DefaultFuchsiaResourceDialect,
11285 >,
11286 T26: fidl::encoding::Encode<
11287 fidl::encoding::Optional<
11288 fidl::encoding::HandleType<
11289 fidl::Timer,
11290 { fidl::ObjectType::TIMER.into_raw() },
11291 2147483648,
11292 >,
11293 >,
11294 fidl::encoding::DefaultFuchsiaResourceDialect,
11295 >,
11296 > fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>
11297 for (
11298 T0,
11299 T1,
11300 T2,
11301 T3,
11302 T4,
11303 T5,
11304 T6,
11305 T7,
11306 T8,
11307 T9,
11308 T10,
11309 T11,
11310 T12,
11311 T13,
11312 T14,
11313 T15,
11314 T16,
11315 T17,
11316 T18,
11317 T19,
11318 T20,
11319 T21,
11320 T22,
11321 T23,
11322 T24,
11323 T25,
11324 T26,
11325 )
11326 {
11327 #[inline]
11328 unsafe fn encode(
11329 self,
11330 encoder: &mut fidl::encoding::Encoder<
11331 '_,
11332 fidl::encoding::DefaultFuchsiaResourceDialect,
11333 >,
11334 offset: usize,
11335 depth: fidl::encoding::Depth,
11336 ) -> fidl::Result<()> {
11337 encoder.debug_check_bounds::<Handles>(offset);
11338 self.0.encode(encoder, offset + 0, depth)?;
11342 self.1.encode(encoder, offset + 4, depth)?;
11343 self.2.encode(encoder, offset + 8, depth)?;
11344 self.3.encode(encoder, offset + 12, depth)?;
11345 self.4.encode(encoder, offset + 16, depth)?;
11346 self.5.encode(encoder, offset + 20, depth)?;
11347 self.6.encode(encoder, offset + 24, depth)?;
11348 self.7.encode(encoder, offset + 28, depth)?;
11349 self.8.encode(encoder, offset + 32, depth)?;
11350 self.9.encode(encoder, offset + 36, depth)?;
11351 self.10.encode(encoder, offset + 40, depth)?;
11352 self.11.encode(encoder, offset + 44, depth)?;
11353 self.12.encode(encoder, offset + 48, depth)?;
11354 self.13.encode(encoder, offset + 52, depth)?;
11355 self.14.encode(encoder, offset + 56, depth)?;
11356 self.15.encode(encoder, offset + 60, depth)?;
11357 self.16.encode(encoder, offset + 64, depth)?;
11358 self.17.encode(encoder, offset + 68, depth)?;
11359 self.18.encode(encoder, offset + 72, depth)?;
11360 self.19.encode(encoder, offset + 76, depth)?;
11361 self.20.encode(encoder, offset + 80, depth)?;
11362 self.21.encode(encoder, offset + 84, depth)?;
11363 self.22.encode(encoder, offset + 88, depth)?;
11364 self.23.encode(encoder, offset + 92, depth)?;
11365 self.24.encode(encoder, offset + 96, depth)?;
11366 self.25.encode(encoder, offset + 100, depth)?;
11367 self.26.encode(encoder, offset + 104, depth)?;
11368 Ok(())
11369 }
11370 }
11371
11372 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Handles {
11373 #[inline(always)]
11374 fn new_empty() -> Self {
11375 Self {
11376 handle_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11377 process_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Process, { fidl::ObjectType::PROCESS.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11378 thread_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Thread, { fidl::ObjectType::THREAD.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11379 vmo_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Vmo, { fidl::ObjectType::VMO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11380 event_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Event, { fidl::ObjectType::EVENT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11381 port_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Port, { fidl::ObjectType::PORT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11382 socket_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Socket, { fidl::ObjectType::SOCKET.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11383 eventpair_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::EventPair, { fidl::ObjectType::EVENTPAIR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11384 job_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Job, { fidl::ObjectType::JOB.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11385 vmar_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Vmar, { fidl::ObjectType::VMAR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11386 fifo_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Fifo, { fidl::ObjectType::FIFO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11387 timer_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Timer, { fidl::ObjectType::TIMER.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11388 nullable_handle_handle: fidl::new_empty!(
11389 fidl::encoding::Optional<
11390 fidl::encoding::HandleType<
11391 fidl::Handle,
11392 { fidl::ObjectType::NONE.into_raw() },
11393 2147483648,
11394 >,
11395 >,
11396 fidl::encoding::DefaultFuchsiaResourceDialect
11397 ),
11398 nullable_process_handle: fidl::new_empty!(
11399 fidl::encoding::Optional<
11400 fidl::encoding::HandleType<
11401 fidl::Process,
11402 { fidl::ObjectType::PROCESS.into_raw() },
11403 2147483648,
11404 >,
11405 >,
11406 fidl::encoding::DefaultFuchsiaResourceDialect
11407 ),
11408 nullable_thread_handle: fidl::new_empty!(
11409 fidl::encoding::Optional<
11410 fidl::encoding::HandleType<
11411 fidl::Thread,
11412 { fidl::ObjectType::THREAD.into_raw() },
11413 2147483648,
11414 >,
11415 >,
11416 fidl::encoding::DefaultFuchsiaResourceDialect
11417 ),
11418 nullable_vmo_handle: fidl::new_empty!(
11419 fidl::encoding::Optional<
11420 fidl::encoding::HandleType<
11421 fidl::Vmo,
11422 { fidl::ObjectType::VMO.into_raw() },
11423 2147483648,
11424 >,
11425 >,
11426 fidl::encoding::DefaultFuchsiaResourceDialect
11427 ),
11428 nullable_channel_handle: fidl::new_empty!(
11429 fidl::encoding::Optional<
11430 fidl::encoding::HandleType<
11431 fidl::Channel,
11432 { fidl::ObjectType::CHANNEL.into_raw() },
11433 2147483648,
11434 >,
11435 >,
11436 fidl::encoding::DefaultFuchsiaResourceDialect
11437 ),
11438 nullable_event_handle: fidl::new_empty!(
11439 fidl::encoding::Optional<
11440 fidl::encoding::HandleType<
11441 fidl::Event,
11442 { fidl::ObjectType::EVENT.into_raw() },
11443 2147483648,
11444 >,
11445 >,
11446 fidl::encoding::DefaultFuchsiaResourceDialect
11447 ),
11448 nullable_port_handle: fidl::new_empty!(
11449 fidl::encoding::Optional<
11450 fidl::encoding::HandleType<
11451 fidl::Port,
11452 { fidl::ObjectType::PORT.into_raw() },
11453 2147483648,
11454 >,
11455 >,
11456 fidl::encoding::DefaultFuchsiaResourceDialect
11457 ),
11458 nullable_interrupt_handle: fidl::new_empty!(
11459 fidl::encoding::Optional<
11460 fidl::encoding::HandleType<
11461 fidl::Interrupt,
11462 { fidl::ObjectType::INTERRUPT.into_raw() },
11463 2147483648,
11464 >,
11465 >,
11466 fidl::encoding::DefaultFuchsiaResourceDialect
11467 ),
11468 nullable_log_handle: fidl::new_empty!(
11469 fidl::encoding::Optional<
11470 fidl::encoding::HandleType<
11471 fidl::DebugLog,
11472 { fidl::ObjectType::DEBUGLOG.into_raw() },
11473 2147483648,
11474 >,
11475 >,
11476 fidl::encoding::DefaultFuchsiaResourceDialect
11477 ),
11478 nullable_socket_handle: fidl::new_empty!(
11479 fidl::encoding::Optional<
11480 fidl::encoding::HandleType<
11481 fidl::Socket,
11482 { fidl::ObjectType::SOCKET.into_raw() },
11483 2147483648,
11484 >,
11485 >,
11486 fidl::encoding::DefaultFuchsiaResourceDialect
11487 ),
11488 nullable_eventpair_handle: fidl::new_empty!(
11489 fidl::encoding::Optional<
11490 fidl::encoding::HandleType<
11491 fidl::EventPair,
11492 { fidl::ObjectType::EVENTPAIR.into_raw() },
11493 2147483648,
11494 >,
11495 >,
11496 fidl::encoding::DefaultFuchsiaResourceDialect
11497 ),
11498 nullable_job_handle: fidl::new_empty!(
11499 fidl::encoding::Optional<
11500 fidl::encoding::HandleType<
11501 fidl::Job,
11502 { fidl::ObjectType::JOB.into_raw() },
11503 2147483648,
11504 >,
11505 >,
11506 fidl::encoding::DefaultFuchsiaResourceDialect
11507 ),
11508 nullable_vmar_handle: fidl::new_empty!(
11509 fidl::encoding::Optional<
11510 fidl::encoding::HandleType<
11511 fidl::Vmar,
11512 { fidl::ObjectType::VMAR.into_raw() },
11513 2147483648,
11514 >,
11515 >,
11516 fidl::encoding::DefaultFuchsiaResourceDialect
11517 ),
11518 nullable_fifo_handle: fidl::new_empty!(
11519 fidl::encoding::Optional<
11520 fidl::encoding::HandleType<
11521 fidl::Fifo,
11522 { fidl::ObjectType::FIFO.into_raw() },
11523 2147483648,
11524 >,
11525 >,
11526 fidl::encoding::DefaultFuchsiaResourceDialect
11527 ),
11528 nullable_timer_handle: fidl::new_empty!(
11529 fidl::encoding::Optional<
11530 fidl::encoding::HandleType<
11531 fidl::Timer,
11532 { fidl::ObjectType::TIMER.into_raw() },
11533 2147483648,
11534 >,
11535 >,
11536 fidl::encoding::DefaultFuchsiaResourceDialect
11537 ),
11538 }
11539 }
11540
11541 #[inline]
11542 unsafe fn decode(
11543 &mut self,
11544 decoder: &mut fidl::encoding::Decoder<
11545 '_,
11546 fidl::encoding::DefaultFuchsiaResourceDialect,
11547 >,
11548 offset: usize,
11549 _depth: fidl::encoding::Depth,
11550 ) -> fidl::Result<()> {
11551 decoder.debug_check_bounds::<Self>(offset);
11552 fidl::decode!(fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.handle_handle, decoder, offset + 0, _depth)?;
11554 fidl::decode!(fidl::encoding::HandleType<fidl::Process, { fidl::ObjectType::PROCESS.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.process_handle, decoder, offset + 4, _depth)?;
11555 fidl::decode!(fidl::encoding::HandleType<fidl::Thread, { fidl::ObjectType::THREAD.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.thread_handle, decoder, offset + 8, _depth)?;
11556 fidl::decode!(fidl::encoding::HandleType<fidl::Vmo, { fidl::ObjectType::VMO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.vmo_handle, decoder, offset + 12, _depth)?;
11557 fidl::decode!(fidl::encoding::HandleType<fidl::Event, { fidl::ObjectType::EVENT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.event_handle, decoder, offset + 16, _depth)?;
11558 fidl::decode!(fidl::encoding::HandleType<fidl::Port, { fidl::ObjectType::PORT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.port_handle, decoder, offset + 20, _depth)?;
11559 fidl::decode!(fidl::encoding::HandleType<fidl::Socket, { fidl::ObjectType::SOCKET.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.socket_handle, decoder, offset + 24, _depth)?;
11560 fidl::decode!(fidl::encoding::HandleType<fidl::EventPair, { fidl::ObjectType::EVENTPAIR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.eventpair_handle, decoder, offset + 28, _depth)?;
11561 fidl::decode!(fidl::encoding::HandleType<fidl::Job, { fidl::ObjectType::JOB.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.job_handle, decoder, offset + 32, _depth)?;
11562 fidl::decode!(fidl::encoding::HandleType<fidl::Vmar, { fidl::ObjectType::VMAR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.vmar_handle, decoder, offset + 36, _depth)?;
11563 fidl::decode!(fidl::encoding::HandleType<fidl::Fifo, { fidl::ObjectType::FIFO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.fifo_handle, decoder, offset + 40, _depth)?;
11564 fidl::decode!(fidl::encoding::HandleType<fidl::Timer, { fidl::ObjectType::TIMER.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.timer_handle, decoder, offset + 44, _depth)?;
11565 fidl::decode!(
11566 fidl::encoding::Optional<
11567 fidl::encoding::HandleType<
11568 fidl::Handle,
11569 { fidl::ObjectType::NONE.into_raw() },
11570 2147483648,
11571 >,
11572 >,
11573 fidl::encoding::DefaultFuchsiaResourceDialect,
11574 &mut self.nullable_handle_handle,
11575 decoder,
11576 offset + 48,
11577 _depth
11578 )?;
11579 fidl::decode!(
11580 fidl::encoding::Optional<
11581 fidl::encoding::HandleType<
11582 fidl::Process,
11583 { fidl::ObjectType::PROCESS.into_raw() },
11584 2147483648,
11585 >,
11586 >,
11587 fidl::encoding::DefaultFuchsiaResourceDialect,
11588 &mut self.nullable_process_handle,
11589 decoder,
11590 offset + 52,
11591 _depth
11592 )?;
11593 fidl::decode!(
11594 fidl::encoding::Optional<
11595 fidl::encoding::HandleType<
11596 fidl::Thread,
11597 { fidl::ObjectType::THREAD.into_raw() },
11598 2147483648,
11599 >,
11600 >,
11601 fidl::encoding::DefaultFuchsiaResourceDialect,
11602 &mut self.nullable_thread_handle,
11603 decoder,
11604 offset + 56,
11605 _depth
11606 )?;
11607 fidl::decode!(
11608 fidl::encoding::Optional<
11609 fidl::encoding::HandleType<
11610 fidl::Vmo,
11611 { fidl::ObjectType::VMO.into_raw() },
11612 2147483648,
11613 >,
11614 >,
11615 fidl::encoding::DefaultFuchsiaResourceDialect,
11616 &mut self.nullable_vmo_handle,
11617 decoder,
11618 offset + 60,
11619 _depth
11620 )?;
11621 fidl::decode!(
11622 fidl::encoding::Optional<
11623 fidl::encoding::HandleType<
11624 fidl::Channel,
11625 { fidl::ObjectType::CHANNEL.into_raw() },
11626 2147483648,
11627 >,
11628 >,
11629 fidl::encoding::DefaultFuchsiaResourceDialect,
11630 &mut self.nullable_channel_handle,
11631 decoder,
11632 offset + 64,
11633 _depth
11634 )?;
11635 fidl::decode!(
11636 fidl::encoding::Optional<
11637 fidl::encoding::HandleType<
11638 fidl::Event,
11639 { fidl::ObjectType::EVENT.into_raw() },
11640 2147483648,
11641 >,
11642 >,
11643 fidl::encoding::DefaultFuchsiaResourceDialect,
11644 &mut self.nullable_event_handle,
11645 decoder,
11646 offset + 68,
11647 _depth
11648 )?;
11649 fidl::decode!(
11650 fidl::encoding::Optional<
11651 fidl::encoding::HandleType<
11652 fidl::Port,
11653 { fidl::ObjectType::PORT.into_raw() },
11654 2147483648,
11655 >,
11656 >,
11657 fidl::encoding::DefaultFuchsiaResourceDialect,
11658 &mut self.nullable_port_handle,
11659 decoder,
11660 offset + 72,
11661 _depth
11662 )?;
11663 fidl::decode!(
11664 fidl::encoding::Optional<
11665 fidl::encoding::HandleType<
11666 fidl::Interrupt,
11667 { fidl::ObjectType::INTERRUPT.into_raw() },
11668 2147483648,
11669 >,
11670 >,
11671 fidl::encoding::DefaultFuchsiaResourceDialect,
11672 &mut self.nullable_interrupt_handle,
11673 decoder,
11674 offset + 76,
11675 _depth
11676 )?;
11677 fidl::decode!(
11678 fidl::encoding::Optional<
11679 fidl::encoding::HandleType<
11680 fidl::DebugLog,
11681 { fidl::ObjectType::DEBUGLOG.into_raw() },
11682 2147483648,
11683 >,
11684 >,
11685 fidl::encoding::DefaultFuchsiaResourceDialect,
11686 &mut self.nullable_log_handle,
11687 decoder,
11688 offset + 80,
11689 _depth
11690 )?;
11691 fidl::decode!(
11692 fidl::encoding::Optional<
11693 fidl::encoding::HandleType<
11694 fidl::Socket,
11695 { fidl::ObjectType::SOCKET.into_raw() },
11696 2147483648,
11697 >,
11698 >,
11699 fidl::encoding::DefaultFuchsiaResourceDialect,
11700 &mut self.nullable_socket_handle,
11701 decoder,
11702 offset + 84,
11703 _depth
11704 )?;
11705 fidl::decode!(
11706 fidl::encoding::Optional<
11707 fidl::encoding::HandleType<
11708 fidl::EventPair,
11709 { fidl::ObjectType::EVENTPAIR.into_raw() },
11710 2147483648,
11711 >,
11712 >,
11713 fidl::encoding::DefaultFuchsiaResourceDialect,
11714 &mut self.nullable_eventpair_handle,
11715 decoder,
11716 offset + 88,
11717 _depth
11718 )?;
11719 fidl::decode!(
11720 fidl::encoding::Optional<
11721 fidl::encoding::HandleType<
11722 fidl::Job,
11723 { fidl::ObjectType::JOB.into_raw() },
11724 2147483648,
11725 >,
11726 >,
11727 fidl::encoding::DefaultFuchsiaResourceDialect,
11728 &mut self.nullable_job_handle,
11729 decoder,
11730 offset + 92,
11731 _depth
11732 )?;
11733 fidl::decode!(
11734 fidl::encoding::Optional<
11735 fidl::encoding::HandleType<
11736 fidl::Vmar,
11737 { fidl::ObjectType::VMAR.into_raw() },
11738 2147483648,
11739 >,
11740 >,
11741 fidl::encoding::DefaultFuchsiaResourceDialect,
11742 &mut self.nullable_vmar_handle,
11743 decoder,
11744 offset + 96,
11745 _depth
11746 )?;
11747 fidl::decode!(
11748 fidl::encoding::Optional<
11749 fidl::encoding::HandleType<
11750 fidl::Fifo,
11751 { fidl::ObjectType::FIFO.into_raw() },
11752 2147483648,
11753 >,
11754 >,
11755 fidl::encoding::DefaultFuchsiaResourceDialect,
11756 &mut self.nullable_fifo_handle,
11757 decoder,
11758 offset + 100,
11759 _depth
11760 )?;
11761 fidl::decode!(
11762 fidl::encoding::Optional<
11763 fidl::encoding::HandleType<
11764 fidl::Timer,
11765 { fidl::ObjectType::TIMER.into_raw() },
11766 2147483648,
11767 >,
11768 >,
11769 fidl::encoding::DefaultFuchsiaResourceDialect,
11770 &mut self.nullable_timer_handle,
11771 decoder,
11772 offset + 104,
11773 _depth
11774 )?;
11775 Ok(())
11776 }
11777 }
11778
11779 impl fidl::encoding::ResourceTypeMarker for Vectors {
11780 type Borrowed<'a> = &'a mut Self;
11781 fn take_or_borrow<'a>(
11782 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
11783 ) -> Self::Borrowed<'a> {
11784 value
11785 }
11786 }
11787
11788 unsafe impl fidl::encoding::TypeMarker for Vectors {
11789 type Owned = Self;
11790
11791 #[inline(always)]
11792 fn inline_align(_context: fidl::encoding::Context) -> usize {
11793 8
11794 }
11795
11796 #[inline(always)]
11797 fn inline_size(_context: fidl::encoding::Context) -> usize {
11798 1920
11799 }
11800 }
11801
11802 unsafe impl fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>
11803 for &mut Vectors
11804 {
11805 #[inline]
11806 unsafe fn encode(
11807 self,
11808 encoder: &mut fidl::encoding::Encoder<
11809 '_,
11810 fidl::encoding::DefaultFuchsiaResourceDialect,
11811 >,
11812 offset: usize,
11813 _depth: fidl::encoding::Depth,
11814 ) -> fidl::Result<()> {
11815 encoder.debug_check_bounds::<Vectors>(offset);
11816 fidl::encoding::Encode::<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
11818 (
11819 <fidl::encoding::UnboundedVector<bool> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_0),
11820 <fidl::encoding::UnboundedVector<i8> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_0),
11821 <fidl::encoding::UnboundedVector<i16> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_0),
11822 <fidl::encoding::UnboundedVector<i32> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_0),
11823 <fidl::encoding::UnboundedVector<i64> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_0),
11824 <fidl::encoding::UnboundedVector<u8> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_0),
11825 <fidl::encoding::UnboundedVector<u16> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_0),
11826 <fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_0),
11827 <fidl::encoding::UnboundedVector<u64> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_0),
11828 <fidl::encoding::UnboundedVector<f32> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_0),
11829 <fidl::encoding::UnboundedVector<f64> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_0),
11830 <fidl::encoding::UnboundedVector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_0),
11831 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_1),
11832 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_1),
11833 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_1),
11834 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_1),
11835 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_1),
11836 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_1),
11837 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_1),
11838 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_1),
11839 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_1),
11840 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_1),
11841 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_1),
11842 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_1),
11843 <fidl::encoding::Vector<bool, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_0),
11844 <fidl::encoding::Vector<i8, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_0),
11845 <fidl::encoding::Vector<i16, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_0),
11846 <fidl::encoding::Vector<i32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_0),
11847 <fidl::encoding::Vector<i64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_0),
11848 <fidl::encoding::Vector<u8, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_0),
11849 <fidl::encoding::Vector<u16, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_0),
11850 <fidl::encoding::Vector<u32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_0),
11851 <fidl::encoding::Vector<u64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_0),
11852 <fidl::encoding::Vector<f32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_0),
11853 <fidl::encoding::Vector<f64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_0),
11854 <fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 1> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_sized_0),
11855 <fidl::encoding::Vector<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_1),
11856 <fidl::encoding::Vector<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_1),
11857 <fidl::encoding::Vector<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_1),
11858 <fidl::encoding::Vector<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_1),
11859 <fidl::encoding::Vector<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_1),
11860 <fidl::encoding::Vector<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_1),
11861 <fidl::encoding::Vector<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_1),
11862 <fidl::encoding::Vector<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_1),
11863 <fidl::encoding::Vector<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_1),
11864 <fidl::encoding::Vector<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_1),
11865 <fidl::encoding::Vector<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_1),
11866 <fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_sized_1),
11867 <fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_2),
11868 <fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_2),
11869 <fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_2),
11870 <fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_2),
11871 <fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_2),
11872 <fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_2),
11873 <fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_2),
11874 <fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_2),
11875 <fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_2),
11876 <fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_2),
11877 <fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_2),
11878 <fidl::encoding::Vector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_sized_2),
11879 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_0),
11880 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_0),
11881 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_0),
11882 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_0),
11883 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_0),
11884 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_0),
11885 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_0),
11886 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_0),
11887 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_0),
11888 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_0),
11889 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_0),
11890 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 1>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_0),
11891 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_1),
11892 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_1),
11893 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_1),
11894 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_1),
11895 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_1),
11896 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_1),
11897 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_1),
11898 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_1),
11899 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_1),
11900 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_1),
11901 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_1),
11902 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_1),
11903 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_0),
11904 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_0),
11905 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_0),
11906 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_0),
11907 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_0),
11908 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_0),
11909 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_0),
11910 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_0),
11911 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_0),
11912 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_0),
11913 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_0),
11914 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 1>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_sized_0),
11915 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_1),
11916 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_1),
11917 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_1),
11918 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_1),
11919 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_1),
11920 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_1),
11921 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_1),
11922 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_1),
11923 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_1),
11924 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_1),
11925 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_1),
11926 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_sized_1),
11927 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_2),
11928 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_2),
11929 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_2),
11930 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_2),
11931 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_2),
11932 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_2),
11933 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_2),
11934 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_2),
11935 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_2),
11936 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_2),
11937 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_2),
11938 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>, 3>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_sized_2),
11939 ),
11940 encoder, offset, _depth
11941 )
11942 }
11943 }
11944 unsafe impl<
11945 T0: fidl::encoding::Encode<
11946 fidl::encoding::UnboundedVector<bool>,
11947 fidl::encoding::DefaultFuchsiaResourceDialect,
11948 >,
11949 T1: fidl::encoding::Encode<
11950 fidl::encoding::UnboundedVector<i8>,
11951 fidl::encoding::DefaultFuchsiaResourceDialect,
11952 >,
11953 T2: fidl::encoding::Encode<
11954 fidl::encoding::UnboundedVector<i16>,
11955 fidl::encoding::DefaultFuchsiaResourceDialect,
11956 >,
11957 T3: fidl::encoding::Encode<
11958 fidl::encoding::UnboundedVector<i32>,
11959 fidl::encoding::DefaultFuchsiaResourceDialect,
11960 >,
11961 T4: fidl::encoding::Encode<
11962 fidl::encoding::UnboundedVector<i64>,
11963 fidl::encoding::DefaultFuchsiaResourceDialect,
11964 >,
11965 T5: fidl::encoding::Encode<
11966 fidl::encoding::UnboundedVector<u8>,
11967 fidl::encoding::DefaultFuchsiaResourceDialect,
11968 >,
11969 T6: fidl::encoding::Encode<
11970 fidl::encoding::UnboundedVector<u16>,
11971 fidl::encoding::DefaultFuchsiaResourceDialect,
11972 >,
11973 T7: fidl::encoding::Encode<
11974 fidl::encoding::UnboundedVector<u32>,
11975 fidl::encoding::DefaultFuchsiaResourceDialect,
11976 >,
11977 T8: fidl::encoding::Encode<
11978 fidl::encoding::UnboundedVector<u64>,
11979 fidl::encoding::DefaultFuchsiaResourceDialect,
11980 >,
11981 T9: fidl::encoding::Encode<
11982 fidl::encoding::UnboundedVector<f32>,
11983 fidl::encoding::DefaultFuchsiaResourceDialect,
11984 >,
11985 T10: fidl::encoding::Encode<
11986 fidl::encoding::UnboundedVector<f64>,
11987 fidl::encoding::DefaultFuchsiaResourceDialect,
11988 >,
11989 T11: fidl::encoding::Encode<
11990 fidl::encoding::UnboundedVector<
11991 fidl::encoding::HandleType<
11992 fidl::Handle,
11993 { fidl::ObjectType::NONE.into_raw() },
11994 2147483648,
11995 >,
11996 >,
11997 fidl::encoding::DefaultFuchsiaResourceDialect,
11998 >,
11999 T12: fidl::encoding::Encode<
12000 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12001 fidl::encoding::DefaultFuchsiaResourceDialect,
12002 >,
12003 T13: fidl::encoding::Encode<
12004 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12005 fidl::encoding::DefaultFuchsiaResourceDialect,
12006 >,
12007 T14: fidl::encoding::Encode<
12008 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12009 fidl::encoding::DefaultFuchsiaResourceDialect,
12010 >,
12011 T15: fidl::encoding::Encode<
12012 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12013 fidl::encoding::DefaultFuchsiaResourceDialect,
12014 >,
12015 T16: fidl::encoding::Encode<
12016 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12017 fidl::encoding::DefaultFuchsiaResourceDialect,
12018 >,
12019 T17: fidl::encoding::Encode<
12020 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12021 fidl::encoding::DefaultFuchsiaResourceDialect,
12022 >,
12023 T18: fidl::encoding::Encode<
12024 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12025 fidl::encoding::DefaultFuchsiaResourceDialect,
12026 >,
12027 T19: fidl::encoding::Encode<
12028 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12029 fidl::encoding::DefaultFuchsiaResourceDialect,
12030 >,
12031 T20: fidl::encoding::Encode<
12032 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12033 fidl::encoding::DefaultFuchsiaResourceDialect,
12034 >,
12035 T21: fidl::encoding::Encode<
12036 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12037 fidl::encoding::DefaultFuchsiaResourceDialect,
12038 >,
12039 T22: fidl::encoding::Encode<
12040 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12041 fidl::encoding::DefaultFuchsiaResourceDialect,
12042 >,
12043 T23: fidl::encoding::Encode<
12044 fidl::encoding::UnboundedVector<
12045 fidl::encoding::Vector<
12046 fidl::encoding::HandleType<
12047 fidl::Handle,
12048 { fidl::ObjectType::NONE.into_raw() },
12049 2147483648,
12050 >,
12051 2,
12052 >,
12053 >,
12054 fidl::encoding::DefaultFuchsiaResourceDialect,
12055 >,
12056 T24: fidl::encoding::Encode<
12057 fidl::encoding::Vector<bool, 1>,
12058 fidl::encoding::DefaultFuchsiaResourceDialect,
12059 >,
12060 T25: fidl::encoding::Encode<
12061 fidl::encoding::Vector<i8, 1>,
12062 fidl::encoding::DefaultFuchsiaResourceDialect,
12063 >,
12064 T26: fidl::encoding::Encode<
12065 fidl::encoding::Vector<i16, 1>,
12066 fidl::encoding::DefaultFuchsiaResourceDialect,
12067 >,
12068 T27: fidl::encoding::Encode<
12069 fidl::encoding::Vector<i32, 1>,
12070 fidl::encoding::DefaultFuchsiaResourceDialect,
12071 >,
12072 T28: fidl::encoding::Encode<
12073 fidl::encoding::Vector<i64, 1>,
12074 fidl::encoding::DefaultFuchsiaResourceDialect,
12075 >,
12076 T29: fidl::encoding::Encode<
12077 fidl::encoding::Vector<u8, 1>,
12078 fidl::encoding::DefaultFuchsiaResourceDialect,
12079 >,
12080 T30: fidl::encoding::Encode<
12081 fidl::encoding::Vector<u16, 1>,
12082 fidl::encoding::DefaultFuchsiaResourceDialect,
12083 >,
12084 T31: fidl::encoding::Encode<
12085 fidl::encoding::Vector<u32, 1>,
12086 fidl::encoding::DefaultFuchsiaResourceDialect,
12087 >,
12088 T32: fidl::encoding::Encode<
12089 fidl::encoding::Vector<u64, 1>,
12090 fidl::encoding::DefaultFuchsiaResourceDialect,
12091 >,
12092 T33: fidl::encoding::Encode<
12093 fidl::encoding::Vector<f32, 1>,
12094 fidl::encoding::DefaultFuchsiaResourceDialect,
12095 >,
12096 T34: fidl::encoding::Encode<
12097 fidl::encoding::Vector<f64, 1>,
12098 fidl::encoding::DefaultFuchsiaResourceDialect,
12099 >,
12100 T35: fidl::encoding::Encode<
12101 fidl::encoding::Vector<
12102 fidl::encoding::HandleType<
12103 fidl::Handle,
12104 { fidl::ObjectType::NONE.into_raw() },
12105 2147483648,
12106 >,
12107 1,
12108 >,
12109 fidl::encoding::DefaultFuchsiaResourceDialect,
12110 >,
12111 T36: fidl::encoding::Encode<
12112 fidl::encoding::Vector<bool, 3>,
12113 fidl::encoding::DefaultFuchsiaResourceDialect,
12114 >,
12115 T37: fidl::encoding::Encode<
12116 fidl::encoding::Vector<i8, 3>,
12117 fidl::encoding::DefaultFuchsiaResourceDialect,
12118 >,
12119 T38: fidl::encoding::Encode<
12120 fidl::encoding::Vector<i16, 3>,
12121 fidl::encoding::DefaultFuchsiaResourceDialect,
12122 >,
12123 T39: fidl::encoding::Encode<
12124 fidl::encoding::Vector<i32, 3>,
12125 fidl::encoding::DefaultFuchsiaResourceDialect,
12126 >,
12127 T40: fidl::encoding::Encode<
12128 fidl::encoding::Vector<i64, 3>,
12129 fidl::encoding::DefaultFuchsiaResourceDialect,
12130 >,
12131 T41: fidl::encoding::Encode<
12132 fidl::encoding::Vector<u8, 3>,
12133 fidl::encoding::DefaultFuchsiaResourceDialect,
12134 >,
12135 T42: fidl::encoding::Encode<
12136 fidl::encoding::Vector<u16, 3>,
12137 fidl::encoding::DefaultFuchsiaResourceDialect,
12138 >,
12139 T43: fidl::encoding::Encode<
12140 fidl::encoding::Vector<u32, 3>,
12141 fidl::encoding::DefaultFuchsiaResourceDialect,
12142 >,
12143 T44: fidl::encoding::Encode<
12144 fidl::encoding::Vector<u64, 3>,
12145 fidl::encoding::DefaultFuchsiaResourceDialect,
12146 >,
12147 T45: fidl::encoding::Encode<
12148 fidl::encoding::Vector<f32, 3>,
12149 fidl::encoding::DefaultFuchsiaResourceDialect,
12150 >,
12151 T46: fidl::encoding::Encode<
12152 fidl::encoding::Vector<f64, 3>,
12153 fidl::encoding::DefaultFuchsiaResourceDialect,
12154 >,
12155 T47: fidl::encoding::Encode<
12156 fidl::encoding::Vector<
12157 fidl::encoding::HandleType<
12158 fidl::Handle,
12159 { fidl::ObjectType::NONE.into_raw() },
12160 2147483648,
12161 >,
12162 3,
12163 >,
12164 fidl::encoding::DefaultFuchsiaResourceDialect,
12165 >,
12166 T48: fidl::encoding::Encode<
12167 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12168 fidl::encoding::DefaultFuchsiaResourceDialect,
12169 >,
12170 T49: fidl::encoding::Encode<
12171 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
12172 fidl::encoding::DefaultFuchsiaResourceDialect,
12173 >,
12174 T50: fidl::encoding::Encode<
12175 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
12176 fidl::encoding::DefaultFuchsiaResourceDialect,
12177 >,
12178 T51: fidl::encoding::Encode<
12179 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
12180 fidl::encoding::DefaultFuchsiaResourceDialect,
12181 >,
12182 T52: fidl::encoding::Encode<
12183 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
12184 fidl::encoding::DefaultFuchsiaResourceDialect,
12185 >,
12186 T53: fidl::encoding::Encode<
12187 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
12188 fidl::encoding::DefaultFuchsiaResourceDialect,
12189 >,
12190 T54: fidl::encoding::Encode<
12191 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
12192 fidl::encoding::DefaultFuchsiaResourceDialect,
12193 >,
12194 T55: fidl::encoding::Encode<
12195 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
12196 fidl::encoding::DefaultFuchsiaResourceDialect,
12197 >,
12198 T56: fidl::encoding::Encode<
12199 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
12200 fidl::encoding::DefaultFuchsiaResourceDialect,
12201 >,
12202 T57: fidl::encoding::Encode<
12203 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
12204 fidl::encoding::DefaultFuchsiaResourceDialect,
12205 >,
12206 T58: fidl::encoding::Encode<
12207 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
12208 fidl::encoding::DefaultFuchsiaResourceDialect,
12209 >,
12210 T59: fidl::encoding::Encode<
12211 fidl::encoding::Vector<
12212 fidl::encoding::Vector<
12213 fidl::encoding::HandleType<
12214 fidl::Handle,
12215 { fidl::ObjectType::NONE.into_raw() },
12216 2147483648,
12217 >,
12218 2,
12219 >,
12220 3,
12221 >,
12222 fidl::encoding::DefaultFuchsiaResourceDialect,
12223 >,
12224 T60: fidl::encoding::Encode<
12225 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
12226 fidl::encoding::DefaultFuchsiaResourceDialect,
12227 >,
12228 T61: fidl::encoding::Encode<
12229 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
12230 fidl::encoding::DefaultFuchsiaResourceDialect,
12231 >,
12232 T62: fidl::encoding::Encode<
12233 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
12234 fidl::encoding::DefaultFuchsiaResourceDialect,
12235 >,
12236 T63: fidl::encoding::Encode<
12237 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
12238 fidl::encoding::DefaultFuchsiaResourceDialect,
12239 >,
12240 T64: fidl::encoding::Encode<
12241 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
12242 fidl::encoding::DefaultFuchsiaResourceDialect,
12243 >,
12244 T65: fidl::encoding::Encode<
12245 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
12246 fidl::encoding::DefaultFuchsiaResourceDialect,
12247 >,
12248 T66: fidl::encoding::Encode<
12249 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
12250 fidl::encoding::DefaultFuchsiaResourceDialect,
12251 >,
12252 T67: fidl::encoding::Encode<
12253 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
12254 fidl::encoding::DefaultFuchsiaResourceDialect,
12255 >,
12256 T68: fidl::encoding::Encode<
12257 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
12258 fidl::encoding::DefaultFuchsiaResourceDialect,
12259 >,
12260 T69: fidl::encoding::Encode<
12261 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
12262 fidl::encoding::DefaultFuchsiaResourceDialect,
12263 >,
12264 T70: fidl::encoding::Encode<
12265 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
12266 fidl::encoding::DefaultFuchsiaResourceDialect,
12267 >,
12268 T71: fidl::encoding::Encode<
12269 fidl::encoding::Optional<
12270 fidl::encoding::Vector<
12271 fidl::encoding::HandleType<
12272 fidl::Handle,
12273 { fidl::ObjectType::NONE.into_raw() },
12274 2147483648,
12275 >,
12276 1,
12277 >,
12278 >,
12279 fidl::encoding::DefaultFuchsiaResourceDialect,
12280 >,
12281 T72: fidl::encoding::Encode<
12282 fidl::encoding::Optional<
12283 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12284 >,
12285 fidl::encoding::DefaultFuchsiaResourceDialect,
12286 >,
12287 T73: fidl::encoding::Encode<
12288 fidl::encoding::Optional<
12289 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12290 >,
12291 fidl::encoding::DefaultFuchsiaResourceDialect,
12292 >,
12293 T74: fidl::encoding::Encode<
12294 fidl::encoding::Optional<
12295 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12296 >,
12297 fidl::encoding::DefaultFuchsiaResourceDialect,
12298 >,
12299 T75: fidl::encoding::Encode<
12300 fidl::encoding::Optional<
12301 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12302 >,
12303 fidl::encoding::DefaultFuchsiaResourceDialect,
12304 >,
12305 T76: fidl::encoding::Encode<
12306 fidl::encoding::Optional<
12307 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12308 >,
12309 fidl::encoding::DefaultFuchsiaResourceDialect,
12310 >,
12311 T77: fidl::encoding::Encode<
12312 fidl::encoding::Optional<
12313 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12314 >,
12315 fidl::encoding::DefaultFuchsiaResourceDialect,
12316 >,
12317 T78: fidl::encoding::Encode<
12318 fidl::encoding::Optional<
12319 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12320 >,
12321 fidl::encoding::DefaultFuchsiaResourceDialect,
12322 >,
12323 T79: fidl::encoding::Encode<
12324 fidl::encoding::Optional<
12325 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12326 >,
12327 fidl::encoding::DefaultFuchsiaResourceDialect,
12328 >,
12329 T80: fidl::encoding::Encode<
12330 fidl::encoding::Optional<
12331 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12332 >,
12333 fidl::encoding::DefaultFuchsiaResourceDialect,
12334 >,
12335 T81: fidl::encoding::Encode<
12336 fidl::encoding::Optional<
12337 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12338 >,
12339 fidl::encoding::DefaultFuchsiaResourceDialect,
12340 >,
12341 T82: fidl::encoding::Encode<
12342 fidl::encoding::Optional<
12343 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12344 >,
12345 fidl::encoding::DefaultFuchsiaResourceDialect,
12346 >,
12347 T83: fidl::encoding::Encode<
12348 fidl::encoding::Optional<
12349 fidl::encoding::UnboundedVector<
12350 fidl::encoding::Vector<
12351 fidl::encoding::HandleType<
12352 fidl::Handle,
12353 { fidl::ObjectType::NONE.into_raw() },
12354 2147483648,
12355 >,
12356 2,
12357 >,
12358 >,
12359 >,
12360 fidl::encoding::DefaultFuchsiaResourceDialect,
12361 >,
12362 T84: fidl::encoding::Encode<
12363 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
12364 fidl::encoding::DefaultFuchsiaResourceDialect,
12365 >,
12366 T85: fidl::encoding::Encode<
12367 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
12368 fidl::encoding::DefaultFuchsiaResourceDialect,
12369 >,
12370 T86: fidl::encoding::Encode<
12371 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
12372 fidl::encoding::DefaultFuchsiaResourceDialect,
12373 >,
12374 T87: fidl::encoding::Encode<
12375 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
12376 fidl::encoding::DefaultFuchsiaResourceDialect,
12377 >,
12378 T88: fidl::encoding::Encode<
12379 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
12380 fidl::encoding::DefaultFuchsiaResourceDialect,
12381 >,
12382 T89: fidl::encoding::Encode<
12383 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
12384 fidl::encoding::DefaultFuchsiaResourceDialect,
12385 >,
12386 T90: fidl::encoding::Encode<
12387 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
12388 fidl::encoding::DefaultFuchsiaResourceDialect,
12389 >,
12390 T91: fidl::encoding::Encode<
12391 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
12392 fidl::encoding::DefaultFuchsiaResourceDialect,
12393 >,
12394 T92: fidl::encoding::Encode<
12395 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
12396 fidl::encoding::DefaultFuchsiaResourceDialect,
12397 >,
12398 T93: fidl::encoding::Encode<
12399 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
12400 fidl::encoding::DefaultFuchsiaResourceDialect,
12401 >,
12402 T94: fidl::encoding::Encode<
12403 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
12404 fidl::encoding::DefaultFuchsiaResourceDialect,
12405 >,
12406 T95: fidl::encoding::Encode<
12407 fidl::encoding::Optional<
12408 fidl::encoding::Vector<
12409 fidl::encoding::HandleType<
12410 fidl::Handle,
12411 { fidl::ObjectType::NONE.into_raw() },
12412 2147483648,
12413 >,
12414 1,
12415 >,
12416 >,
12417 fidl::encoding::DefaultFuchsiaResourceDialect,
12418 >,
12419 T96: fidl::encoding::Encode<
12420 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
12421 fidl::encoding::DefaultFuchsiaResourceDialect,
12422 >,
12423 T97: fidl::encoding::Encode<
12424 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
12425 fidl::encoding::DefaultFuchsiaResourceDialect,
12426 >,
12427 T98: fidl::encoding::Encode<
12428 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
12429 fidl::encoding::DefaultFuchsiaResourceDialect,
12430 >,
12431 T99: fidl::encoding::Encode<
12432 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
12433 fidl::encoding::DefaultFuchsiaResourceDialect,
12434 >,
12435 T100: fidl::encoding::Encode<
12436 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
12437 fidl::encoding::DefaultFuchsiaResourceDialect,
12438 >,
12439 T101: fidl::encoding::Encode<
12440 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
12441 fidl::encoding::DefaultFuchsiaResourceDialect,
12442 >,
12443 T102: fidl::encoding::Encode<
12444 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
12445 fidl::encoding::DefaultFuchsiaResourceDialect,
12446 >,
12447 T103: fidl::encoding::Encode<
12448 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
12449 fidl::encoding::DefaultFuchsiaResourceDialect,
12450 >,
12451 T104: fidl::encoding::Encode<
12452 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
12453 fidl::encoding::DefaultFuchsiaResourceDialect,
12454 >,
12455 T105: fidl::encoding::Encode<
12456 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
12457 fidl::encoding::DefaultFuchsiaResourceDialect,
12458 >,
12459 T106: fidl::encoding::Encode<
12460 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
12461 fidl::encoding::DefaultFuchsiaResourceDialect,
12462 >,
12463 T107: fidl::encoding::Encode<
12464 fidl::encoding::Optional<
12465 fidl::encoding::Vector<
12466 fidl::encoding::HandleType<
12467 fidl::Handle,
12468 { fidl::ObjectType::NONE.into_raw() },
12469 2147483648,
12470 >,
12471 3,
12472 >,
12473 >,
12474 fidl::encoding::DefaultFuchsiaResourceDialect,
12475 >,
12476 T108: fidl::encoding::Encode<
12477 fidl::encoding::Optional<
12478 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12479 >,
12480 fidl::encoding::DefaultFuchsiaResourceDialect,
12481 >,
12482 T109: fidl::encoding::Encode<
12483 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>>,
12484 fidl::encoding::DefaultFuchsiaResourceDialect,
12485 >,
12486 T110: fidl::encoding::Encode<
12487 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>>,
12488 fidl::encoding::DefaultFuchsiaResourceDialect,
12489 >,
12490 T111: fidl::encoding::Encode<
12491 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>>,
12492 fidl::encoding::DefaultFuchsiaResourceDialect,
12493 >,
12494 T112: fidl::encoding::Encode<
12495 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>>,
12496 fidl::encoding::DefaultFuchsiaResourceDialect,
12497 >,
12498 T113: fidl::encoding::Encode<
12499 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>>,
12500 fidl::encoding::DefaultFuchsiaResourceDialect,
12501 >,
12502 T114: fidl::encoding::Encode<
12503 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>>,
12504 fidl::encoding::DefaultFuchsiaResourceDialect,
12505 >,
12506 T115: fidl::encoding::Encode<
12507 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>>,
12508 fidl::encoding::DefaultFuchsiaResourceDialect,
12509 >,
12510 T116: fidl::encoding::Encode<
12511 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>>,
12512 fidl::encoding::DefaultFuchsiaResourceDialect,
12513 >,
12514 T117: fidl::encoding::Encode<
12515 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>>,
12516 fidl::encoding::DefaultFuchsiaResourceDialect,
12517 >,
12518 T118: fidl::encoding::Encode<
12519 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>>,
12520 fidl::encoding::DefaultFuchsiaResourceDialect,
12521 >,
12522 T119: fidl::encoding::Encode<
12523 fidl::encoding::Optional<
12524 fidl::encoding::Vector<
12525 fidl::encoding::Vector<
12526 fidl::encoding::HandleType<
12527 fidl::Handle,
12528 { fidl::ObjectType::NONE.into_raw() },
12529 2147483648,
12530 >,
12531 2,
12532 >,
12533 3,
12534 >,
12535 >,
12536 fidl::encoding::DefaultFuchsiaResourceDialect,
12537 >,
12538 > fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>
12539 for (
12540 T0,
12541 T1,
12542 T2,
12543 T3,
12544 T4,
12545 T5,
12546 T6,
12547 T7,
12548 T8,
12549 T9,
12550 T10,
12551 T11,
12552 T12,
12553 T13,
12554 T14,
12555 T15,
12556 T16,
12557 T17,
12558 T18,
12559 T19,
12560 T20,
12561 T21,
12562 T22,
12563 T23,
12564 T24,
12565 T25,
12566 T26,
12567 T27,
12568 T28,
12569 T29,
12570 T30,
12571 T31,
12572 T32,
12573 T33,
12574 T34,
12575 T35,
12576 T36,
12577 T37,
12578 T38,
12579 T39,
12580 T40,
12581 T41,
12582 T42,
12583 T43,
12584 T44,
12585 T45,
12586 T46,
12587 T47,
12588 T48,
12589 T49,
12590 T50,
12591 T51,
12592 T52,
12593 T53,
12594 T54,
12595 T55,
12596 T56,
12597 T57,
12598 T58,
12599 T59,
12600 T60,
12601 T61,
12602 T62,
12603 T63,
12604 T64,
12605 T65,
12606 T66,
12607 T67,
12608 T68,
12609 T69,
12610 T70,
12611 T71,
12612 T72,
12613 T73,
12614 T74,
12615 T75,
12616 T76,
12617 T77,
12618 T78,
12619 T79,
12620 T80,
12621 T81,
12622 T82,
12623 T83,
12624 T84,
12625 T85,
12626 T86,
12627 T87,
12628 T88,
12629 T89,
12630 T90,
12631 T91,
12632 T92,
12633 T93,
12634 T94,
12635 T95,
12636 T96,
12637 T97,
12638 T98,
12639 T99,
12640 T100,
12641 T101,
12642 T102,
12643 T103,
12644 T104,
12645 T105,
12646 T106,
12647 T107,
12648 T108,
12649 T109,
12650 T110,
12651 T111,
12652 T112,
12653 T113,
12654 T114,
12655 T115,
12656 T116,
12657 T117,
12658 T118,
12659 T119,
12660 )
12661 {
12662 #[inline]
12663 unsafe fn encode(
12664 self,
12665 encoder: &mut fidl::encoding::Encoder<
12666 '_,
12667 fidl::encoding::DefaultFuchsiaResourceDialect,
12668 >,
12669 offset: usize,
12670 depth: fidl::encoding::Depth,
12671 ) -> fidl::Result<()> {
12672 encoder.debug_check_bounds::<Vectors>(offset);
12673 self.0.encode(encoder, offset + 0, depth)?;
12677 self.1.encode(encoder, offset + 16, depth)?;
12678 self.2.encode(encoder, offset + 32, depth)?;
12679 self.3.encode(encoder, offset + 48, depth)?;
12680 self.4.encode(encoder, offset + 64, depth)?;
12681 self.5.encode(encoder, offset + 80, depth)?;
12682 self.6.encode(encoder, offset + 96, depth)?;
12683 self.7.encode(encoder, offset + 112, depth)?;
12684 self.8.encode(encoder, offset + 128, depth)?;
12685 self.9.encode(encoder, offset + 144, depth)?;
12686 self.10.encode(encoder, offset + 160, depth)?;
12687 self.11.encode(encoder, offset + 176, depth)?;
12688 self.12.encode(encoder, offset + 192, depth)?;
12689 self.13.encode(encoder, offset + 208, depth)?;
12690 self.14.encode(encoder, offset + 224, depth)?;
12691 self.15.encode(encoder, offset + 240, depth)?;
12692 self.16.encode(encoder, offset + 256, depth)?;
12693 self.17.encode(encoder, offset + 272, depth)?;
12694 self.18.encode(encoder, offset + 288, depth)?;
12695 self.19.encode(encoder, offset + 304, depth)?;
12696 self.20.encode(encoder, offset + 320, depth)?;
12697 self.21.encode(encoder, offset + 336, depth)?;
12698 self.22.encode(encoder, offset + 352, depth)?;
12699 self.23.encode(encoder, offset + 368, depth)?;
12700 self.24.encode(encoder, offset + 384, depth)?;
12701 self.25.encode(encoder, offset + 400, depth)?;
12702 self.26.encode(encoder, offset + 416, depth)?;
12703 self.27.encode(encoder, offset + 432, depth)?;
12704 self.28.encode(encoder, offset + 448, depth)?;
12705 self.29.encode(encoder, offset + 464, depth)?;
12706 self.30.encode(encoder, offset + 480, depth)?;
12707 self.31.encode(encoder, offset + 496, depth)?;
12708 self.32.encode(encoder, offset + 512, depth)?;
12709 self.33.encode(encoder, offset + 528, depth)?;
12710 self.34.encode(encoder, offset + 544, depth)?;
12711 self.35.encode(encoder, offset + 560, depth)?;
12712 self.36.encode(encoder, offset + 576, depth)?;
12713 self.37.encode(encoder, offset + 592, depth)?;
12714 self.38.encode(encoder, offset + 608, depth)?;
12715 self.39.encode(encoder, offset + 624, depth)?;
12716 self.40.encode(encoder, offset + 640, depth)?;
12717 self.41.encode(encoder, offset + 656, depth)?;
12718 self.42.encode(encoder, offset + 672, depth)?;
12719 self.43.encode(encoder, offset + 688, depth)?;
12720 self.44.encode(encoder, offset + 704, depth)?;
12721 self.45.encode(encoder, offset + 720, depth)?;
12722 self.46.encode(encoder, offset + 736, depth)?;
12723 self.47.encode(encoder, offset + 752, depth)?;
12724 self.48.encode(encoder, offset + 768, depth)?;
12725 self.49.encode(encoder, offset + 784, depth)?;
12726 self.50.encode(encoder, offset + 800, depth)?;
12727 self.51.encode(encoder, offset + 816, depth)?;
12728 self.52.encode(encoder, offset + 832, depth)?;
12729 self.53.encode(encoder, offset + 848, depth)?;
12730 self.54.encode(encoder, offset + 864, depth)?;
12731 self.55.encode(encoder, offset + 880, depth)?;
12732 self.56.encode(encoder, offset + 896, depth)?;
12733 self.57.encode(encoder, offset + 912, depth)?;
12734 self.58.encode(encoder, offset + 928, depth)?;
12735 self.59.encode(encoder, offset + 944, depth)?;
12736 self.60.encode(encoder, offset + 960, depth)?;
12737 self.61.encode(encoder, offset + 976, depth)?;
12738 self.62.encode(encoder, offset + 992, depth)?;
12739 self.63.encode(encoder, offset + 1008, depth)?;
12740 self.64.encode(encoder, offset + 1024, depth)?;
12741 self.65.encode(encoder, offset + 1040, depth)?;
12742 self.66.encode(encoder, offset + 1056, depth)?;
12743 self.67.encode(encoder, offset + 1072, depth)?;
12744 self.68.encode(encoder, offset + 1088, depth)?;
12745 self.69.encode(encoder, offset + 1104, depth)?;
12746 self.70.encode(encoder, offset + 1120, depth)?;
12747 self.71.encode(encoder, offset + 1136, depth)?;
12748 self.72.encode(encoder, offset + 1152, depth)?;
12749 self.73.encode(encoder, offset + 1168, depth)?;
12750 self.74.encode(encoder, offset + 1184, depth)?;
12751 self.75.encode(encoder, offset + 1200, depth)?;
12752 self.76.encode(encoder, offset + 1216, depth)?;
12753 self.77.encode(encoder, offset + 1232, depth)?;
12754 self.78.encode(encoder, offset + 1248, depth)?;
12755 self.79.encode(encoder, offset + 1264, depth)?;
12756 self.80.encode(encoder, offset + 1280, depth)?;
12757 self.81.encode(encoder, offset + 1296, depth)?;
12758 self.82.encode(encoder, offset + 1312, depth)?;
12759 self.83.encode(encoder, offset + 1328, depth)?;
12760 self.84.encode(encoder, offset + 1344, depth)?;
12761 self.85.encode(encoder, offset + 1360, depth)?;
12762 self.86.encode(encoder, offset + 1376, depth)?;
12763 self.87.encode(encoder, offset + 1392, depth)?;
12764 self.88.encode(encoder, offset + 1408, depth)?;
12765 self.89.encode(encoder, offset + 1424, depth)?;
12766 self.90.encode(encoder, offset + 1440, depth)?;
12767 self.91.encode(encoder, offset + 1456, depth)?;
12768 self.92.encode(encoder, offset + 1472, depth)?;
12769 self.93.encode(encoder, offset + 1488, depth)?;
12770 self.94.encode(encoder, offset + 1504, depth)?;
12771 self.95.encode(encoder, offset + 1520, depth)?;
12772 self.96.encode(encoder, offset + 1536, depth)?;
12773 self.97.encode(encoder, offset + 1552, depth)?;
12774 self.98.encode(encoder, offset + 1568, depth)?;
12775 self.99.encode(encoder, offset + 1584, depth)?;
12776 self.100.encode(encoder, offset + 1600, depth)?;
12777 self.101.encode(encoder, offset + 1616, depth)?;
12778 self.102.encode(encoder, offset + 1632, depth)?;
12779 self.103.encode(encoder, offset + 1648, depth)?;
12780 self.104.encode(encoder, offset + 1664, depth)?;
12781 self.105.encode(encoder, offset + 1680, depth)?;
12782 self.106.encode(encoder, offset + 1696, depth)?;
12783 self.107.encode(encoder, offset + 1712, depth)?;
12784 self.108.encode(encoder, offset + 1728, depth)?;
12785 self.109.encode(encoder, offset + 1744, depth)?;
12786 self.110.encode(encoder, offset + 1760, depth)?;
12787 self.111.encode(encoder, offset + 1776, depth)?;
12788 self.112.encode(encoder, offset + 1792, depth)?;
12789 self.113.encode(encoder, offset + 1808, depth)?;
12790 self.114.encode(encoder, offset + 1824, depth)?;
12791 self.115.encode(encoder, offset + 1840, depth)?;
12792 self.116.encode(encoder, offset + 1856, depth)?;
12793 self.117.encode(encoder, offset + 1872, depth)?;
12794 self.118.encode(encoder, offset + 1888, depth)?;
12795 self.119.encode(encoder, offset + 1904, depth)?;
12796 Ok(())
12797 }
12798 }
12799
12800 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Vectors {
12801 #[inline(always)]
12802 fn new_empty() -> Self {
12803 Self {
12804 b_0: fidl::new_empty!(
12805 fidl::encoding::UnboundedVector<bool>,
12806 fidl::encoding::DefaultFuchsiaResourceDialect
12807 ),
12808 i8_0: fidl::new_empty!(
12809 fidl::encoding::UnboundedVector<i8>,
12810 fidl::encoding::DefaultFuchsiaResourceDialect
12811 ),
12812 i16_0: fidl::new_empty!(
12813 fidl::encoding::UnboundedVector<i16>,
12814 fidl::encoding::DefaultFuchsiaResourceDialect
12815 ),
12816 i32_0: fidl::new_empty!(
12817 fidl::encoding::UnboundedVector<i32>,
12818 fidl::encoding::DefaultFuchsiaResourceDialect
12819 ),
12820 i64_0: fidl::new_empty!(
12821 fidl::encoding::UnboundedVector<i64>,
12822 fidl::encoding::DefaultFuchsiaResourceDialect
12823 ),
12824 u8_0: fidl::new_empty!(
12825 fidl::encoding::UnboundedVector<u8>,
12826 fidl::encoding::DefaultFuchsiaResourceDialect
12827 ),
12828 u16_0: fidl::new_empty!(
12829 fidl::encoding::UnboundedVector<u16>,
12830 fidl::encoding::DefaultFuchsiaResourceDialect
12831 ),
12832 u32_0: fidl::new_empty!(
12833 fidl::encoding::UnboundedVector<u32>,
12834 fidl::encoding::DefaultFuchsiaResourceDialect
12835 ),
12836 u64_0: fidl::new_empty!(
12837 fidl::encoding::UnboundedVector<u64>,
12838 fidl::encoding::DefaultFuchsiaResourceDialect
12839 ),
12840 f32_0: fidl::new_empty!(
12841 fidl::encoding::UnboundedVector<f32>,
12842 fidl::encoding::DefaultFuchsiaResourceDialect
12843 ),
12844 f64_0: fidl::new_empty!(
12845 fidl::encoding::UnboundedVector<f64>,
12846 fidl::encoding::DefaultFuchsiaResourceDialect
12847 ),
12848 handle_0: fidl::new_empty!(
12849 fidl::encoding::UnboundedVector<
12850 fidl::encoding::HandleType<
12851 fidl::Handle,
12852 { fidl::ObjectType::NONE.into_raw() },
12853 2147483648,
12854 >,
12855 >,
12856 fidl::encoding::DefaultFuchsiaResourceDialect
12857 ),
12858 b_1: fidl::new_empty!(
12859 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12860 fidl::encoding::DefaultFuchsiaResourceDialect
12861 ),
12862 i8_1: fidl::new_empty!(
12863 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12864 fidl::encoding::DefaultFuchsiaResourceDialect
12865 ),
12866 i16_1: fidl::new_empty!(
12867 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12868 fidl::encoding::DefaultFuchsiaResourceDialect
12869 ),
12870 i32_1: fidl::new_empty!(
12871 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12872 fidl::encoding::DefaultFuchsiaResourceDialect
12873 ),
12874 i64_1: fidl::new_empty!(
12875 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12876 fidl::encoding::DefaultFuchsiaResourceDialect
12877 ),
12878 u8_1: fidl::new_empty!(
12879 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12880 fidl::encoding::DefaultFuchsiaResourceDialect
12881 ),
12882 u16_1: fidl::new_empty!(
12883 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12884 fidl::encoding::DefaultFuchsiaResourceDialect
12885 ),
12886 u32_1: fidl::new_empty!(
12887 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12888 fidl::encoding::DefaultFuchsiaResourceDialect
12889 ),
12890 u64_1: fidl::new_empty!(
12891 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12892 fidl::encoding::DefaultFuchsiaResourceDialect
12893 ),
12894 f32_1: fidl::new_empty!(
12895 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12896 fidl::encoding::DefaultFuchsiaResourceDialect
12897 ),
12898 f64_1: fidl::new_empty!(
12899 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12900 fidl::encoding::DefaultFuchsiaResourceDialect
12901 ),
12902 handle_1: fidl::new_empty!(
12903 fidl::encoding::UnboundedVector<
12904 fidl::encoding::Vector<
12905 fidl::encoding::HandleType<
12906 fidl::Handle,
12907 { fidl::ObjectType::NONE.into_raw() },
12908 2147483648,
12909 >,
12910 2,
12911 >,
12912 >,
12913 fidl::encoding::DefaultFuchsiaResourceDialect
12914 ),
12915 b_sized_0: fidl::new_empty!(fidl::encoding::Vector<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12916 i8_sized_0: fidl::new_empty!(fidl::encoding::Vector<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12917 i16_sized_0: fidl::new_empty!(fidl::encoding::Vector<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12918 i32_sized_0: fidl::new_empty!(fidl::encoding::Vector<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12919 i64_sized_0: fidl::new_empty!(fidl::encoding::Vector<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12920 u8_sized_0: fidl::new_empty!(fidl::encoding::Vector<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12921 u16_sized_0: fidl::new_empty!(fidl::encoding::Vector<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12922 u32_sized_0: fidl::new_empty!(fidl::encoding::Vector<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12923 u64_sized_0: fidl::new_empty!(fidl::encoding::Vector<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12924 f32_sized_0: fidl::new_empty!(fidl::encoding::Vector<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12925 f64_sized_0: fidl::new_empty!(fidl::encoding::Vector<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12926 handle_sized_0: fidl::new_empty!(
12927 fidl::encoding::Vector<
12928 fidl::encoding::HandleType<
12929 fidl::Handle,
12930 { fidl::ObjectType::NONE.into_raw() },
12931 2147483648,
12932 >,
12933 1,
12934 >,
12935 fidl::encoding::DefaultFuchsiaResourceDialect
12936 ),
12937 b_sized_1: fidl::new_empty!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12938 i8_sized_1: fidl::new_empty!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12939 i16_sized_1: fidl::new_empty!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12940 i32_sized_1: fidl::new_empty!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12941 i64_sized_1: fidl::new_empty!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12942 u8_sized_1: fidl::new_empty!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12943 u16_sized_1: fidl::new_empty!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12944 u32_sized_1: fidl::new_empty!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12945 u64_sized_1: fidl::new_empty!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12946 f32_sized_1: fidl::new_empty!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12947 f64_sized_1: fidl::new_empty!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12948 handle_sized_1: fidl::new_empty!(
12949 fidl::encoding::Vector<
12950 fidl::encoding::HandleType<
12951 fidl::Handle,
12952 { fidl::ObjectType::NONE.into_raw() },
12953 2147483648,
12954 >,
12955 3,
12956 >,
12957 fidl::encoding::DefaultFuchsiaResourceDialect
12958 ),
12959 b_sized_2: fidl::new_empty!(
12960 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12961 fidl::encoding::DefaultFuchsiaResourceDialect
12962 ),
12963 i8_sized_2: fidl::new_empty!(
12964 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
12965 fidl::encoding::DefaultFuchsiaResourceDialect
12966 ),
12967 i16_sized_2: fidl::new_empty!(
12968 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
12969 fidl::encoding::DefaultFuchsiaResourceDialect
12970 ),
12971 i32_sized_2: fidl::new_empty!(
12972 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
12973 fidl::encoding::DefaultFuchsiaResourceDialect
12974 ),
12975 i64_sized_2: fidl::new_empty!(
12976 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
12977 fidl::encoding::DefaultFuchsiaResourceDialect
12978 ),
12979 u8_sized_2: fidl::new_empty!(
12980 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
12981 fidl::encoding::DefaultFuchsiaResourceDialect
12982 ),
12983 u16_sized_2: fidl::new_empty!(
12984 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
12985 fidl::encoding::DefaultFuchsiaResourceDialect
12986 ),
12987 u32_sized_2: fidl::new_empty!(
12988 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
12989 fidl::encoding::DefaultFuchsiaResourceDialect
12990 ),
12991 u64_sized_2: fidl::new_empty!(
12992 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
12993 fidl::encoding::DefaultFuchsiaResourceDialect
12994 ),
12995 f32_sized_2: fidl::new_empty!(
12996 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
12997 fidl::encoding::DefaultFuchsiaResourceDialect
12998 ),
12999 f64_sized_2: fidl::new_empty!(
13000 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13001 fidl::encoding::DefaultFuchsiaResourceDialect
13002 ),
13003 handle_sized_2: fidl::new_empty!(
13004 fidl::encoding::Vector<
13005 fidl::encoding::Vector<
13006 fidl::encoding::HandleType<
13007 fidl::Handle,
13008 { fidl::ObjectType::NONE.into_raw() },
13009 2147483648,
13010 >,
13011 2,
13012 >,
13013 3,
13014 >,
13015 fidl::encoding::DefaultFuchsiaResourceDialect
13016 ),
13017 b_nullable_0: fidl::new_empty!(
13018 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13019 fidl::encoding::DefaultFuchsiaResourceDialect
13020 ),
13021 i8_nullable_0: fidl::new_empty!(
13022 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13023 fidl::encoding::DefaultFuchsiaResourceDialect
13024 ),
13025 i16_nullable_0: fidl::new_empty!(
13026 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13027 fidl::encoding::DefaultFuchsiaResourceDialect
13028 ),
13029 i32_nullable_0: fidl::new_empty!(
13030 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13031 fidl::encoding::DefaultFuchsiaResourceDialect
13032 ),
13033 i64_nullable_0: fidl::new_empty!(
13034 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13035 fidl::encoding::DefaultFuchsiaResourceDialect
13036 ),
13037 u8_nullable_0: fidl::new_empty!(
13038 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13039 fidl::encoding::DefaultFuchsiaResourceDialect
13040 ),
13041 u16_nullable_0: fidl::new_empty!(
13042 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13043 fidl::encoding::DefaultFuchsiaResourceDialect
13044 ),
13045 u32_nullable_0: fidl::new_empty!(
13046 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13047 fidl::encoding::DefaultFuchsiaResourceDialect
13048 ),
13049 u64_nullable_0: fidl::new_empty!(
13050 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13051 fidl::encoding::DefaultFuchsiaResourceDialect
13052 ),
13053 f32_nullable_0: fidl::new_empty!(
13054 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13055 fidl::encoding::DefaultFuchsiaResourceDialect
13056 ),
13057 f64_nullable_0: fidl::new_empty!(
13058 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13059 fidl::encoding::DefaultFuchsiaResourceDialect
13060 ),
13061 handle_nullable_0: fidl::new_empty!(
13062 fidl::encoding::Optional<
13063 fidl::encoding::Vector<
13064 fidl::encoding::HandleType<
13065 fidl::Handle,
13066 { fidl::ObjectType::NONE.into_raw() },
13067 2147483648,
13068 >,
13069 1,
13070 >,
13071 >,
13072 fidl::encoding::DefaultFuchsiaResourceDialect
13073 ),
13074 b_nullable_1: fidl::new_empty!(
13075 fidl::encoding::Optional<
13076 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13077 >,
13078 fidl::encoding::DefaultFuchsiaResourceDialect
13079 ),
13080 i8_nullable_1: fidl::new_empty!(
13081 fidl::encoding::Optional<
13082 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13083 >,
13084 fidl::encoding::DefaultFuchsiaResourceDialect
13085 ),
13086 i16_nullable_1: fidl::new_empty!(
13087 fidl::encoding::Optional<
13088 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13089 >,
13090 fidl::encoding::DefaultFuchsiaResourceDialect
13091 ),
13092 i32_nullable_1: fidl::new_empty!(
13093 fidl::encoding::Optional<
13094 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13095 >,
13096 fidl::encoding::DefaultFuchsiaResourceDialect
13097 ),
13098 i64_nullable_1: fidl::new_empty!(
13099 fidl::encoding::Optional<
13100 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13101 >,
13102 fidl::encoding::DefaultFuchsiaResourceDialect
13103 ),
13104 u8_nullable_1: fidl::new_empty!(
13105 fidl::encoding::Optional<
13106 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13107 >,
13108 fidl::encoding::DefaultFuchsiaResourceDialect
13109 ),
13110 u16_nullable_1: fidl::new_empty!(
13111 fidl::encoding::Optional<
13112 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13113 >,
13114 fidl::encoding::DefaultFuchsiaResourceDialect
13115 ),
13116 u32_nullable_1: fidl::new_empty!(
13117 fidl::encoding::Optional<
13118 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13119 >,
13120 fidl::encoding::DefaultFuchsiaResourceDialect
13121 ),
13122 u64_nullable_1: fidl::new_empty!(
13123 fidl::encoding::Optional<
13124 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13125 >,
13126 fidl::encoding::DefaultFuchsiaResourceDialect
13127 ),
13128 f32_nullable_1: fidl::new_empty!(
13129 fidl::encoding::Optional<
13130 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13131 >,
13132 fidl::encoding::DefaultFuchsiaResourceDialect
13133 ),
13134 f64_nullable_1: fidl::new_empty!(
13135 fidl::encoding::Optional<
13136 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13137 >,
13138 fidl::encoding::DefaultFuchsiaResourceDialect
13139 ),
13140 handle_nullable_1: fidl::new_empty!(
13141 fidl::encoding::Optional<
13142 fidl::encoding::UnboundedVector<
13143 fidl::encoding::Vector<
13144 fidl::encoding::HandleType<
13145 fidl::Handle,
13146 { fidl::ObjectType::NONE.into_raw() },
13147 2147483648,
13148 >,
13149 2,
13150 >,
13151 >,
13152 >,
13153 fidl::encoding::DefaultFuchsiaResourceDialect
13154 ),
13155 b_nullable_sized_0: fidl::new_empty!(
13156 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13157 fidl::encoding::DefaultFuchsiaResourceDialect
13158 ),
13159 i8_nullable_sized_0: fidl::new_empty!(
13160 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13161 fidl::encoding::DefaultFuchsiaResourceDialect
13162 ),
13163 i16_nullable_sized_0: fidl::new_empty!(
13164 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13165 fidl::encoding::DefaultFuchsiaResourceDialect
13166 ),
13167 i32_nullable_sized_0: fidl::new_empty!(
13168 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13169 fidl::encoding::DefaultFuchsiaResourceDialect
13170 ),
13171 i64_nullable_sized_0: fidl::new_empty!(
13172 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13173 fidl::encoding::DefaultFuchsiaResourceDialect
13174 ),
13175 u8_nullable_sized_0: fidl::new_empty!(
13176 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13177 fidl::encoding::DefaultFuchsiaResourceDialect
13178 ),
13179 u16_nullable_sized_0: fidl::new_empty!(
13180 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13181 fidl::encoding::DefaultFuchsiaResourceDialect
13182 ),
13183 u32_nullable_sized_0: fidl::new_empty!(
13184 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13185 fidl::encoding::DefaultFuchsiaResourceDialect
13186 ),
13187 u64_nullable_sized_0: fidl::new_empty!(
13188 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13189 fidl::encoding::DefaultFuchsiaResourceDialect
13190 ),
13191 f32_nullable_sized_0: fidl::new_empty!(
13192 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13193 fidl::encoding::DefaultFuchsiaResourceDialect
13194 ),
13195 f64_nullable_sized_0: fidl::new_empty!(
13196 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13197 fidl::encoding::DefaultFuchsiaResourceDialect
13198 ),
13199 handle_nullable_sized_0: fidl::new_empty!(
13200 fidl::encoding::Optional<
13201 fidl::encoding::Vector<
13202 fidl::encoding::HandleType<
13203 fidl::Handle,
13204 { fidl::ObjectType::NONE.into_raw() },
13205 2147483648,
13206 >,
13207 1,
13208 >,
13209 >,
13210 fidl::encoding::DefaultFuchsiaResourceDialect
13211 ),
13212 b_nullable_sized_1: fidl::new_empty!(
13213 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
13214 fidl::encoding::DefaultFuchsiaResourceDialect
13215 ),
13216 i8_nullable_sized_1: fidl::new_empty!(
13217 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
13218 fidl::encoding::DefaultFuchsiaResourceDialect
13219 ),
13220 i16_nullable_sized_1: fidl::new_empty!(
13221 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
13222 fidl::encoding::DefaultFuchsiaResourceDialect
13223 ),
13224 i32_nullable_sized_1: fidl::new_empty!(
13225 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
13226 fidl::encoding::DefaultFuchsiaResourceDialect
13227 ),
13228 i64_nullable_sized_1: fidl::new_empty!(
13229 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
13230 fidl::encoding::DefaultFuchsiaResourceDialect
13231 ),
13232 u8_nullable_sized_1: fidl::new_empty!(
13233 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
13234 fidl::encoding::DefaultFuchsiaResourceDialect
13235 ),
13236 u16_nullable_sized_1: fidl::new_empty!(
13237 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
13238 fidl::encoding::DefaultFuchsiaResourceDialect
13239 ),
13240 u32_nullable_sized_1: fidl::new_empty!(
13241 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
13242 fidl::encoding::DefaultFuchsiaResourceDialect
13243 ),
13244 u64_nullable_sized_1: fidl::new_empty!(
13245 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
13246 fidl::encoding::DefaultFuchsiaResourceDialect
13247 ),
13248 f32_nullable_sized_1: fidl::new_empty!(
13249 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
13250 fidl::encoding::DefaultFuchsiaResourceDialect
13251 ),
13252 f64_nullable_sized_1: fidl::new_empty!(
13253 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
13254 fidl::encoding::DefaultFuchsiaResourceDialect
13255 ),
13256 handle_nullable_sized_1: fidl::new_empty!(
13257 fidl::encoding::Optional<
13258 fidl::encoding::Vector<
13259 fidl::encoding::HandleType<
13260 fidl::Handle,
13261 { fidl::ObjectType::NONE.into_raw() },
13262 2147483648,
13263 >,
13264 3,
13265 >,
13266 >,
13267 fidl::encoding::DefaultFuchsiaResourceDialect
13268 ),
13269 b_nullable_sized_2: fidl::new_empty!(
13270 fidl::encoding::Optional<
13271 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
13272 >,
13273 fidl::encoding::DefaultFuchsiaResourceDialect
13274 ),
13275 i8_nullable_sized_2: fidl::new_empty!(
13276 fidl::encoding::Optional<
13277 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
13278 >,
13279 fidl::encoding::DefaultFuchsiaResourceDialect
13280 ),
13281 i16_nullable_sized_2: fidl::new_empty!(
13282 fidl::encoding::Optional<
13283 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
13284 >,
13285 fidl::encoding::DefaultFuchsiaResourceDialect
13286 ),
13287 i32_nullable_sized_2: fidl::new_empty!(
13288 fidl::encoding::Optional<
13289 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
13290 >,
13291 fidl::encoding::DefaultFuchsiaResourceDialect
13292 ),
13293 i64_nullable_sized_2: fidl::new_empty!(
13294 fidl::encoding::Optional<
13295 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
13296 >,
13297 fidl::encoding::DefaultFuchsiaResourceDialect
13298 ),
13299 u8_nullable_sized_2: fidl::new_empty!(
13300 fidl::encoding::Optional<
13301 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
13302 >,
13303 fidl::encoding::DefaultFuchsiaResourceDialect
13304 ),
13305 u16_nullable_sized_2: fidl::new_empty!(
13306 fidl::encoding::Optional<
13307 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
13308 >,
13309 fidl::encoding::DefaultFuchsiaResourceDialect
13310 ),
13311 u32_nullable_sized_2: fidl::new_empty!(
13312 fidl::encoding::Optional<
13313 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
13314 >,
13315 fidl::encoding::DefaultFuchsiaResourceDialect
13316 ),
13317 u64_nullable_sized_2: fidl::new_empty!(
13318 fidl::encoding::Optional<
13319 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
13320 >,
13321 fidl::encoding::DefaultFuchsiaResourceDialect
13322 ),
13323 f32_nullable_sized_2: fidl::new_empty!(
13324 fidl::encoding::Optional<
13325 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13326 >,
13327 fidl::encoding::DefaultFuchsiaResourceDialect
13328 ),
13329 f64_nullable_sized_2: fidl::new_empty!(
13330 fidl::encoding::Optional<
13331 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13332 >,
13333 fidl::encoding::DefaultFuchsiaResourceDialect
13334 ),
13335 handle_nullable_sized_2: fidl::new_empty!(
13336 fidl::encoding::Optional<
13337 fidl::encoding::Vector<
13338 fidl::encoding::Vector<
13339 fidl::encoding::HandleType<
13340 fidl::Handle,
13341 { fidl::ObjectType::NONE.into_raw() },
13342 2147483648,
13343 >,
13344 2,
13345 >,
13346 3,
13347 >,
13348 >,
13349 fidl::encoding::DefaultFuchsiaResourceDialect
13350 ),
13351 }
13352 }
13353
13354 #[inline]
13355 unsafe fn decode(
13356 &mut self,
13357 decoder: &mut fidl::encoding::Decoder<
13358 '_,
13359 fidl::encoding::DefaultFuchsiaResourceDialect,
13360 >,
13361 offset: usize,
13362 _depth: fidl::encoding::Depth,
13363 ) -> fidl::Result<()> {
13364 decoder.debug_check_bounds::<Self>(offset);
13365 fidl::decode!(
13367 fidl::encoding::UnboundedVector<bool>,
13368 fidl::encoding::DefaultFuchsiaResourceDialect,
13369 &mut self.b_0,
13370 decoder,
13371 offset + 0,
13372 _depth
13373 )?;
13374 fidl::decode!(
13375 fidl::encoding::UnboundedVector<i8>,
13376 fidl::encoding::DefaultFuchsiaResourceDialect,
13377 &mut self.i8_0,
13378 decoder,
13379 offset + 16,
13380 _depth
13381 )?;
13382 fidl::decode!(
13383 fidl::encoding::UnboundedVector<i16>,
13384 fidl::encoding::DefaultFuchsiaResourceDialect,
13385 &mut self.i16_0,
13386 decoder,
13387 offset + 32,
13388 _depth
13389 )?;
13390 fidl::decode!(
13391 fidl::encoding::UnboundedVector<i32>,
13392 fidl::encoding::DefaultFuchsiaResourceDialect,
13393 &mut self.i32_0,
13394 decoder,
13395 offset + 48,
13396 _depth
13397 )?;
13398 fidl::decode!(
13399 fidl::encoding::UnboundedVector<i64>,
13400 fidl::encoding::DefaultFuchsiaResourceDialect,
13401 &mut self.i64_0,
13402 decoder,
13403 offset + 64,
13404 _depth
13405 )?;
13406 fidl::decode!(
13407 fidl::encoding::UnboundedVector<u8>,
13408 fidl::encoding::DefaultFuchsiaResourceDialect,
13409 &mut self.u8_0,
13410 decoder,
13411 offset + 80,
13412 _depth
13413 )?;
13414 fidl::decode!(
13415 fidl::encoding::UnboundedVector<u16>,
13416 fidl::encoding::DefaultFuchsiaResourceDialect,
13417 &mut self.u16_0,
13418 decoder,
13419 offset + 96,
13420 _depth
13421 )?;
13422 fidl::decode!(
13423 fidl::encoding::UnboundedVector<u32>,
13424 fidl::encoding::DefaultFuchsiaResourceDialect,
13425 &mut self.u32_0,
13426 decoder,
13427 offset + 112,
13428 _depth
13429 )?;
13430 fidl::decode!(
13431 fidl::encoding::UnboundedVector<u64>,
13432 fidl::encoding::DefaultFuchsiaResourceDialect,
13433 &mut self.u64_0,
13434 decoder,
13435 offset + 128,
13436 _depth
13437 )?;
13438 fidl::decode!(
13439 fidl::encoding::UnboundedVector<f32>,
13440 fidl::encoding::DefaultFuchsiaResourceDialect,
13441 &mut self.f32_0,
13442 decoder,
13443 offset + 144,
13444 _depth
13445 )?;
13446 fidl::decode!(
13447 fidl::encoding::UnboundedVector<f64>,
13448 fidl::encoding::DefaultFuchsiaResourceDialect,
13449 &mut self.f64_0,
13450 decoder,
13451 offset + 160,
13452 _depth
13453 )?;
13454 fidl::decode!(
13455 fidl::encoding::UnboundedVector<
13456 fidl::encoding::HandleType<
13457 fidl::Handle,
13458 { fidl::ObjectType::NONE.into_raw() },
13459 2147483648,
13460 >,
13461 >,
13462 fidl::encoding::DefaultFuchsiaResourceDialect,
13463 &mut self.handle_0,
13464 decoder,
13465 offset + 176,
13466 _depth
13467 )?;
13468 fidl::decode!(
13469 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13470 fidl::encoding::DefaultFuchsiaResourceDialect,
13471 &mut self.b_1,
13472 decoder,
13473 offset + 192,
13474 _depth
13475 )?;
13476 fidl::decode!(
13477 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13478 fidl::encoding::DefaultFuchsiaResourceDialect,
13479 &mut self.i8_1,
13480 decoder,
13481 offset + 208,
13482 _depth
13483 )?;
13484 fidl::decode!(
13485 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13486 fidl::encoding::DefaultFuchsiaResourceDialect,
13487 &mut self.i16_1,
13488 decoder,
13489 offset + 224,
13490 _depth
13491 )?;
13492 fidl::decode!(
13493 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13494 fidl::encoding::DefaultFuchsiaResourceDialect,
13495 &mut self.i32_1,
13496 decoder,
13497 offset + 240,
13498 _depth
13499 )?;
13500 fidl::decode!(
13501 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13502 fidl::encoding::DefaultFuchsiaResourceDialect,
13503 &mut self.i64_1,
13504 decoder,
13505 offset + 256,
13506 _depth
13507 )?;
13508 fidl::decode!(
13509 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13510 fidl::encoding::DefaultFuchsiaResourceDialect,
13511 &mut self.u8_1,
13512 decoder,
13513 offset + 272,
13514 _depth
13515 )?;
13516 fidl::decode!(
13517 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13518 fidl::encoding::DefaultFuchsiaResourceDialect,
13519 &mut self.u16_1,
13520 decoder,
13521 offset + 288,
13522 _depth
13523 )?;
13524 fidl::decode!(
13525 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13526 fidl::encoding::DefaultFuchsiaResourceDialect,
13527 &mut self.u32_1,
13528 decoder,
13529 offset + 304,
13530 _depth
13531 )?;
13532 fidl::decode!(
13533 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13534 fidl::encoding::DefaultFuchsiaResourceDialect,
13535 &mut self.u64_1,
13536 decoder,
13537 offset + 320,
13538 _depth
13539 )?;
13540 fidl::decode!(
13541 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13542 fidl::encoding::DefaultFuchsiaResourceDialect,
13543 &mut self.f32_1,
13544 decoder,
13545 offset + 336,
13546 _depth
13547 )?;
13548 fidl::decode!(
13549 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13550 fidl::encoding::DefaultFuchsiaResourceDialect,
13551 &mut self.f64_1,
13552 decoder,
13553 offset + 352,
13554 _depth
13555 )?;
13556 fidl::decode!(
13557 fidl::encoding::UnboundedVector<
13558 fidl::encoding::Vector<
13559 fidl::encoding::HandleType<
13560 fidl::Handle,
13561 { fidl::ObjectType::NONE.into_raw() },
13562 2147483648,
13563 >,
13564 2,
13565 >,
13566 >,
13567 fidl::encoding::DefaultFuchsiaResourceDialect,
13568 &mut self.handle_1,
13569 decoder,
13570 offset + 368,
13571 _depth
13572 )?;
13573 fidl::decode!(fidl::encoding::Vector<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_sized_0, decoder, offset + 384, _depth)?;
13574 fidl::decode!(fidl::encoding::Vector<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_sized_0, decoder, offset + 400, _depth)?;
13575 fidl::decode!(fidl::encoding::Vector<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_sized_0, decoder, offset + 416, _depth)?;
13576 fidl::decode!(fidl::encoding::Vector<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_sized_0, decoder, offset + 432, _depth)?;
13577 fidl::decode!(fidl::encoding::Vector<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_sized_0, decoder, offset + 448, _depth)?;
13578 fidl::decode!(fidl::encoding::Vector<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_sized_0, decoder, offset + 464, _depth)?;
13579 fidl::decode!(fidl::encoding::Vector<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_sized_0, decoder, offset + 480, _depth)?;
13580 fidl::decode!(fidl::encoding::Vector<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_sized_0, decoder, offset + 496, _depth)?;
13581 fidl::decode!(fidl::encoding::Vector<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_sized_0, decoder, offset + 512, _depth)?;
13582 fidl::decode!(fidl::encoding::Vector<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_sized_0, decoder, offset + 528, _depth)?;
13583 fidl::decode!(fidl::encoding::Vector<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_sized_0, decoder, offset + 544, _depth)?;
13584 fidl::decode!(
13585 fidl::encoding::Vector<
13586 fidl::encoding::HandleType<
13587 fidl::Handle,
13588 { fidl::ObjectType::NONE.into_raw() },
13589 2147483648,
13590 >,
13591 1,
13592 >,
13593 fidl::encoding::DefaultFuchsiaResourceDialect,
13594 &mut self.handle_sized_0,
13595 decoder,
13596 offset + 560,
13597 _depth
13598 )?;
13599 fidl::decode!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_sized_1, decoder, offset + 576, _depth)?;
13600 fidl::decode!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_sized_1, decoder, offset + 592, _depth)?;
13601 fidl::decode!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_sized_1, decoder, offset + 608, _depth)?;
13602 fidl::decode!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_sized_1, decoder, offset + 624, _depth)?;
13603 fidl::decode!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_sized_1, decoder, offset + 640, _depth)?;
13604 fidl::decode!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_sized_1, decoder, offset + 656, _depth)?;
13605 fidl::decode!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_sized_1, decoder, offset + 672, _depth)?;
13606 fidl::decode!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_sized_1, decoder, offset + 688, _depth)?;
13607 fidl::decode!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_sized_1, decoder, offset + 704, _depth)?;
13608 fidl::decode!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_sized_1, decoder, offset + 720, _depth)?;
13609 fidl::decode!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_sized_1, decoder, offset + 736, _depth)?;
13610 fidl::decode!(
13611 fidl::encoding::Vector<
13612 fidl::encoding::HandleType<
13613 fidl::Handle,
13614 { fidl::ObjectType::NONE.into_raw() },
13615 2147483648,
13616 >,
13617 3,
13618 >,
13619 fidl::encoding::DefaultFuchsiaResourceDialect,
13620 &mut self.handle_sized_1,
13621 decoder,
13622 offset + 752,
13623 _depth
13624 )?;
13625 fidl::decode!(
13626 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
13627 fidl::encoding::DefaultFuchsiaResourceDialect,
13628 &mut self.b_sized_2,
13629 decoder,
13630 offset + 768,
13631 _depth
13632 )?;
13633 fidl::decode!(
13634 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
13635 fidl::encoding::DefaultFuchsiaResourceDialect,
13636 &mut self.i8_sized_2,
13637 decoder,
13638 offset + 784,
13639 _depth
13640 )?;
13641 fidl::decode!(
13642 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
13643 fidl::encoding::DefaultFuchsiaResourceDialect,
13644 &mut self.i16_sized_2,
13645 decoder,
13646 offset + 800,
13647 _depth
13648 )?;
13649 fidl::decode!(
13650 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
13651 fidl::encoding::DefaultFuchsiaResourceDialect,
13652 &mut self.i32_sized_2,
13653 decoder,
13654 offset + 816,
13655 _depth
13656 )?;
13657 fidl::decode!(
13658 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
13659 fidl::encoding::DefaultFuchsiaResourceDialect,
13660 &mut self.i64_sized_2,
13661 decoder,
13662 offset + 832,
13663 _depth
13664 )?;
13665 fidl::decode!(
13666 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
13667 fidl::encoding::DefaultFuchsiaResourceDialect,
13668 &mut self.u8_sized_2,
13669 decoder,
13670 offset + 848,
13671 _depth
13672 )?;
13673 fidl::decode!(
13674 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
13675 fidl::encoding::DefaultFuchsiaResourceDialect,
13676 &mut self.u16_sized_2,
13677 decoder,
13678 offset + 864,
13679 _depth
13680 )?;
13681 fidl::decode!(
13682 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
13683 fidl::encoding::DefaultFuchsiaResourceDialect,
13684 &mut self.u32_sized_2,
13685 decoder,
13686 offset + 880,
13687 _depth
13688 )?;
13689 fidl::decode!(
13690 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
13691 fidl::encoding::DefaultFuchsiaResourceDialect,
13692 &mut self.u64_sized_2,
13693 decoder,
13694 offset + 896,
13695 _depth
13696 )?;
13697 fidl::decode!(
13698 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13699 fidl::encoding::DefaultFuchsiaResourceDialect,
13700 &mut self.f32_sized_2,
13701 decoder,
13702 offset + 912,
13703 _depth
13704 )?;
13705 fidl::decode!(
13706 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13707 fidl::encoding::DefaultFuchsiaResourceDialect,
13708 &mut self.f64_sized_2,
13709 decoder,
13710 offset + 928,
13711 _depth
13712 )?;
13713 fidl::decode!(
13714 fidl::encoding::Vector<
13715 fidl::encoding::Vector<
13716 fidl::encoding::HandleType<
13717 fidl::Handle,
13718 { fidl::ObjectType::NONE.into_raw() },
13719 2147483648,
13720 >,
13721 2,
13722 >,
13723 3,
13724 >,
13725 fidl::encoding::DefaultFuchsiaResourceDialect,
13726 &mut self.handle_sized_2,
13727 decoder,
13728 offset + 944,
13729 _depth
13730 )?;
13731 fidl::decode!(
13732 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13733 fidl::encoding::DefaultFuchsiaResourceDialect,
13734 &mut self.b_nullable_0,
13735 decoder,
13736 offset + 960,
13737 _depth
13738 )?;
13739 fidl::decode!(
13740 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13741 fidl::encoding::DefaultFuchsiaResourceDialect,
13742 &mut self.i8_nullable_0,
13743 decoder,
13744 offset + 976,
13745 _depth
13746 )?;
13747 fidl::decode!(
13748 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13749 fidl::encoding::DefaultFuchsiaResourceDialect,
13750 &mut self.i16_nullable_0,
13751 decoder,
13752 offset + 992,
13753 _depth
13754 )?;
13755 fidl::decode!(
13756 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13757 fidl::encoding::DefaultFuchsiaResourceDialect,
13758 &mut self.i32_nullable_0,
13759 decoder,
13760 offset + 1008,
13761 _depth
13762 )?;
13763 fidl::decode!(
13764 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13765 fidl::encoding::DefaultFuchsiaResourceDialect,
13766 &mut self.i64_nullable_0,
13767 decoder,
13768 offset + 1024,
13769 _depth
13770 )?;
13771 fidl::decode!(
13772 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13773 fidl::encoding::DefaultFuchsiaResourceDialect,
13774 &mut self.u8_nullable_0,
13775 decoder,
13776 offset + 1040,
13777 _depth
13778 )?;
13779 fidl::decode!(
13780 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13781 fidl::encoding::DefaultFuchsiaResourceDialect,
13782 &mut self.u16_nullable_0,
13783 decoder,
13784 offset + 1056,
13785 _depth
13786 )?;
13787 fidl::decode!(
13788 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13789 fidl::encoding::DefaultFuchsiaResourceDialect,
13790 &mut self.u32_nullable_0,
13791 decoder,
13792 offset + 1072,
13793 _depth
13794 )?;
13795 fidl::decode!(
13796 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13797 fidl::encoding::DefaultFuchsiaResourceDialect,
13798 &mut self.u64_nullable_0,
13799 decoder,
13800 offset + 1088,
13801 _depth
13802 )?;
13803 fidl::decode!(
13804 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13805 fidl::encoding::DefaultFuchsiaResourceDialect,
13806 &mut self.f32_nullable_0,
13807 decoder,
13808 offset + 1104,
13809 _depth
13810 )?;
13811 fidl::decode!(
13812 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13813 fidl::encoding::DefaultFuchsiaResourceDialect,
13814 &mut self.f64_nullable_0,
13815 decoder,
13816 offset + 1120,
13817 _depth
13818 )?;
13819 fidl::decode!(
13820 fidl::encoding::Optional<
13821 fidl::encoding::Vector<
13822 fidl::encoding::HandleType<
13823 fidl::Handle,
13824 { fidl::ObjectType::NONE.into_raw() },
13825 2147483648,
13826 >,
13827 1,
13828 >,
13829 >,
13830 fidl::encoding::DefaultFuchsiaResourceDialect,
13831 &mut self.handle_nullable_0,
13832 decoder,
13833 offset + 1136,
13834 _depth
13835 )?;
13836 fidl::decode!(
13837 fidl::encoding::Optional<
13838 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13839 >,
13840 fidl::encoding::DefaultFuchsiaResourceDialect,
13841 &mut self.b_nullable_1,
13842 decoder,
13843 offset + 1152,
13844 _depth
13845 )?;
13846 fidl::decode!(
13847 fidl::encoding::Optional<
13848 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13849 >,
13850 fidl::encoding::DefaultFuchsiaResourceDialect,
13851 &mut self.i8_nullable_1,
13852 decoder,
13853 offset + 1168,
13854 _depth
13855 )?;
13856 fidl::decode!(
13857 fidl::encoding::Optional<
13858 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13859 >,
13860 fidl::encoding::DefaultFuchsiaResourceDialect,
13861 &mut self.i16_nullable_1,
13862 decoder,
13863 offset + 1184,
13864 _depth
13865 )?;
13866 fidl::decode!(
13867 fidl::encoding::Optional<
13868 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13869 >,
13870 fidl::encoding::DefaultFuchsiaResourceDialect,
13871 &mut self.i32_nullable_1,
13872 decoder,
13873 offset + 1200,
13874 _depth
13875 )?;
13876 fidl::decode!(
13877 fidl::encoding::Optional<
13878 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13879 >,
13880 fidl::encoding::DefaultFuchsiaResourceDialect,
13881 &mut self.i64_nullable_1,
13882 decoder,
13883 offset + 1216,
13884 _depth
13885 )?;
13886 fidl::decode!(
13887 fidl::encoding::Optional<
13888 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13889 >,
13890 fidl::encoding::DefaultFuchsiaResourceDialect,
13891 &mut self.u8_nullable_1,
13892 decoder,
13893 offset + 1232,
13894 _depth
13895 )?;
13896 fidl::decode!(
13897 fidl::encoding::Optional<
13898 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13899 >,
13900 fidl::encoding::DefaultFuchsiaResourceDialect,
13901 &mut self.u16_nullable_1,
13902 decoder,
13903 offset + 1248,
13904 _depth
13905 )?;
13906 fidl::decode!(
13907 fidl::encoding::Optional<
13908 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13909 >,
13910 fidl::encoding::DefaultFuchsiaResourceDialect,
13911 &mut self.u32_nullable_1,
13912 decoder,
13913 offset + 1264,
13914 _depth
13915 )?;
13916 fidl::decode!(
13917 fidl::encoding::Optional<
13918 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13919 >,
13920 fidl::encoding::DefaultFuchsiaResourceDialect,
13921 &mut self.u64_nullable_1,
13922 decoder,
13923 offset + 1280,
13924 _depth
13925 )?;
13926 fidl::decode!(
13927 fidl::encoding::Optional<
13928 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13929 >,
13930 fidl::encoding::DefaultFuchsiaResourceDialect,
13931 &mut self.f32_nullable_1,
13932 decoder,
13933 offset + 1296,
13934 _depth
13935 )?;
13936 fidl::decode!(
13937 fidl::encoding::Optional<
13938 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13939 >,
13940 fidl::encoding::DefaultFuchsiaResourceDialect,
13941 &mut self.f64_nullable_1,
13942 decoder,
13943 offset + 1312,
13944 _depth
13945 )?;
13946 fidl::decode!(
13947 fidl::encoding::Optional<
13948 fidl::encoding::UnboundedVector<
13949 fidl::encoding::Vector<
13950 fidl::encoding::HandleType<
13951 fidl::Handle,
13952 { fidl::ObjectType::NONE.into_raw() },
13953 2147483648,
13954 >,
13955 2,
13956 >,
13957 >,
13958 >,
13959 fidl::encoding::DefaultFuchsiaResourceDialect,
13960 &mut self.handle_nullable_1,
13961 decoder,
13962 offset + 1328,
13963 _depth
13964 )?;
13965 fidl::decode!(
13966 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13967 fidl::encoding::DefaultFuchsiaResourceDialect,
13968 &mut self.b_nullable_sized_0,
13969 decoder,
13970 offset + 1344,
13971 _depth
13972 )?;
13973 fidl::decode!(
13974 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13975 fidl::encoding::DefaultFuchsiaResourceDialect,
13976 &mut self.i8_nullable_sized_0,
13977 decoder,
13978 offset + 1360,
13979 _depth
13980 )?;
13981 fidl::decode!(
13982 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13983 fidl::encoding::DefaultFuchsiaResourceDialect,
13984 &mut self.i16_nullable_sized_0,
13985 decoder,
13986 offset + 1376,
13987 _depth
13988 )?;
13989 fidl::decode!(
13990 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13991 fidl::encoding::DefaultFuchsiaResourceDialect,
13992 &mut self.i32_nullable_sized_0,
13993 decoder,
13994 offset + 1392,
13995 _depth
13996 )?;
13997 fidl::decode!(
13998 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13999 fidl::encoding::DefaultFuchsiaResourceDialect,
14000 &mut self.i64_nullable_sized_0,
14001 decoder,
14002 offset + 1408,
14003 _depth
14004 )?;
14005 fidl::decode!(
14006 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
14007 fidl::encoding::DefaultFuchsiaResourceDialect,
14008 &mut self.u8_nullable_sized_0,
14009 decoder,
14010 offset + 1424,
14011 _depth
14012 )?;
14013 fidl::decode!(
14014 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
14015 fidl::encoding::DefaultFuchsiaResourceDialect,
14016 &mut self.u16_nullable_sized_0,
14017 decoder,
14018 offset + 1440,
14019 _depth
14020 )?;
14021 fidl::decode!(
14022 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
14023 fidl::encoding::DefaultFuchsiaResourceDialect,
14024 &mut self.u32_nullable_sized_0,
14025 decoder,
14026 offset + 1456,
14027 _depth
14028 )?;
14029 fidl::decode!(
14030 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
14031 fidl::encoding::DefaultFuchsiaResourceDialect,
14032 &mut self.u64_nullable_sized_0,
14033 decoder,
14034 offset + 1472,
14035 _depth
14036 )?;
14037 fidl::decode!(
14038 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
14039 fidl::encoding::DefaultFuchsiaResourceDialect,
14040 &mut self.f32_nullable_sized_0,
14041 decoder,
14042 offset + 1488,
14043 _depth
14044 )?;
14045 fidl::decode!(
14046 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
14047 fidl::encoding::DefaultFuchsiaResourceDialect,
14048 &mut self.f64_nullable_sized_0,
14049 decoder,
14050 offset + 1504,
14051 _depth
14052 )?;
14053 fidl::decode!(
14054 fidl::encoding::Optional<
14055 fidl::encoding::Vector<
14056 fidl::encoding::HandleType<
14057 fidl::Handle,
14058 { fidl::ObjectType::NONE.into_raw() },
14059 2147483648,
14060 >,
14061 1,
14062 >,
14063 >,
14064 fidl::encoding::DefaultFuchsiaResourceDialect,
14065 &mut self.handle_nullable_sized_0,
14066 decoder,
14067 offset + 1520,
14068 _depth
14069 )?;
14070 fidl::decode!(
14071 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
14072 fidl::encoding::DefaultFuchsiaResourceDialect,
14073 &mut self.b_nullable_sized_1,
14074 decoder,
14075 offset + 1536,
14076 _depth
14077 )?;
14078 fidl::decode!(
14079 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
14080 fidl::encoding::DefaultFuchsiaResourceDialect,
14081 &mut self.i8_nullable_sized_1,
14082 decoder,
14083 offset + 1552,
14084 _depth
14085 )?;
14086 fidl::decode!(
14087 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
14088 fidl::encoding::DefaultFuchsiaResourceDialect,
14089 &mut self.i16_nullable_sized_1,
14090 decoder,
14091 offset + 1568,
14092 _depth
14093 )?;
14094 fidl::decode!(
14095 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
14096 fidl::encoding::DefaultFuchsiaResourceDialect,
14097 &mut self.i32_nullable_sized_1,
14098 decoder,
14099 offset + 1584,
14100 _depth
14101 )?;
14102 fidl::decode!(
14103 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
14104 fidl::encoding::DefaultFuchsiaResourceDialect,
14105 &mut self.i64_nullable_sized_1,
14106 decoder,
14107 offset + 1600,
14108 _depth
14109 )?;
14110 fidl::decode!(
14111 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
14112 fidl::encoding::DefaultFuchsiaResourceDialect,
14113 &mut self.u8_nullable_sized_1,
14114 decoder,
14115 offset + 1616,
14116 _depth
14117 )?;
14118 fidl::decode!(
14119 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
14120 fidl::encoding::DefaultFuchsiaResourceDialect,
14121 &mut self.u16_nullable_sized_1,
14122 decoder,
14123 offset + 1632,
14124 _depth
14125 )?;
14126 fidl::decode!(
14127 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
14128 fidl::encoding::DefaultFuchsiaResourceDialect,
14129 &mut self.u32_nullable_sized_1,
14130 decoder,
14131 offset + 1648,
14132 _depth
14133 )?;
14134 fidl::decode!(
14135 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
14136 fidl::encoding::DefaultFuchsiaResourceDialect,
14137 &mut self.u64_nullable_sized_1,
14138 decoder,
14139 offset + 1664,
14140 _depth
14141 )?;
14142 fidl::decode!(
14143 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
14144 fidl::encoding::DefaultFuchsiaResourceDialect,
14145 &mut self.f32_nullable_sized_1,
14146 decoder,
14147 offset + 1680,
14148 _depth
14149 )?;
14150 fidl::decode!(
14151 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
14152 fidl::encoding::DefaultFuchsiaResourceDialect,
14153 &mut self.f64_nullable_sized_1,
14154 decoder,
14155 offset + 1696,
14156 _depth
14157 )?;
14158 fidl::decode!(
14159 fidl::encoding::Optional<
14160 fidl::encoding::Vector<
14161 fidl::encoding::HandleType<
14162 fidl::Handle,
14163 { fidl::ObjectType::NONE.into_raw() },
14164 2147483648,
14165 >,
14166 3,
14167 >,
14168 >,
14169 fidl::encoding::DefaultFuchsiaResourceDialect,
14170 &mut self.handle_nullable_sized_1,
14171 decoder,
14172 offset + 1712,
14173 _depth
14174 )?;
14175 fidl::decode!(
14176 fidl::encoding::Optional<
14177 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
14178 >,
14179 fidl::encoding::DefaultFuchsiaResourceDialect,
14180 &mut self.b_nullable_sized_2,
14181 decoder,
14182 offset + 1728,
14183 _depth
14184 )?;
14185 fidl::decode!(
14186 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>>,
14187 fidl::encoding::DefaultFuchsiaResourceDialect,
14188 &mut self.i8_nullable_sized_2,
14189 decoder,
14190 offset + 1744,
14191 _depth
14192 )?;
14193 fidl::decode!(
14194 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>>,
14195 fidl::encoding::DefaultFuchsiaResourceDialect,
14196 &mut self.i16_nullable_sized_2,
14197 decoder,
14198 offset + 1760,
14199 _depth
14200 )?;
14201 fidl::decode!(
14202 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>>,
14203 fidl::encoding::DefaultFuchsiaResourceDialect,
14204 &mut self.i32_nullable_sized_2,
14205 decoder,
14206 offset + 1776,
14207 _depth
14208 )?;
14209 fidl::decode!(
14210 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>>,
14211 fidl::encoding::DefaultFuchsiaResourceDialect,
14212 &mut self.i64_nullable_sized_2,
14213 decoder,
14214 offset + 1792,
14215 _depth
14216 )?;
14217 fidl::decode!(
14218 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>>,
14219 fidl::encoding::DefaultFuchsiaResourceDialect,
14220 &mut self.u8_nullable_sized_2,
14221 decoder,
14222 offset + 1808,
14223 _depth
14224 )?;
14225 fidl::decode!(
14226 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>>,
14227 fidl::encoding::DefaultFuchsiaResourceDialect,
14228 &mut self.u16_nullable_sized_2,
14229 decoder,
14230 offset + 1824,
14231 _depth
14232 )?;
14233 fidl::decode!(
14234 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>>,
14235 fidl::encoding::DefaultFuchsiaResourceDialect,
14236 &mut self.u32_nullable_sized_2,
14237 decoder,
14238 offset + 1840,
14239 _depth
14240 )?;
14241 fidl::decode!(
14242 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>>,
14243 fidl::encoding::DefaultFuchsiaResourceDialect,
14244 &mut self.u64_nullable_sized_2,
14245 decoder,
14246 offset + 1856,
14247 _depth
14248 )?;
14249 fidl::decode!(
14250 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>>,
14251 fidl::encoding::DefaultFuchsiaResourceDialect,
14252 &mut self.f32_nullable_sized_2,
14253 decoder,
14254 offset + 1872,
14255 _depth
14256 )?;
14257 fidl::decode!(
14258 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>>,
14259 fidl::encoding::DefaultFuchsiaResourceDialect,
14260 &mut self.f64_nullable_sized_2,
14261 decoder,
14262 offset + 1888,
14263 _depth
14264 )?;
14265 fidl::decode!(
14266 fidl::encoding::Optional<
14267 fidl::encoding::Vector<
14268 fidl::encoding::Vector<
14269 fidl::encoding::HandleType<
14270 fidl::Handle,
14271 { fidl::ObjectType::NONE.into_raw() },
14272 2147483648,
14273 >,
14274 2,
14275 >,
14276 3,
14277 >,
14278 >,
14279 fidl::encoding::DefaultFuchsiaResourceDialect,
14280 &mut self.handle_nullable_sized_2,
14281 decoder,
14282 offset + 1904,
14283 _depth
14284 )?;
14285 Ok(())
14286 }
14287 }
14288
14289 impl AllTypesTable {
14290 #[inline(always)]
14291 fn max_ordinal_present(&self) -> u64 {
14292 if let Some(_) = self.xunion_member {
14293 return 21;
14294 }
14295 if let Some(_) = self.table_member {
14296 return 20;
14297 }
14298 if let Some(_) = self.vector_member {
14299 return 19;
14300 }
14301 if let Some(_) = self.array_member {
14302 return 18;
14303 }
14304 if let Some(_) = self.union_member {
14305 return 17;
14306 }
14307 if let Some(_) = self.struct_member {
14308 return 16;
14309 }
14310 if let Some(_) = self.string_member {
14311 return 15;
14312 }
14313 if let Some(_) = self.handle_member {
14314 return 14;
14315 }
14316 if let Some(_) = self.bits_member {
14317 return 13;
14318 }
14319 if let Some(_) = self.enum_member {
14320 return 12;
14321 }
14322 if let Some(_) = self.float64_member {
14323 return 11;
14324 }
14325 if let Some(_) = self.float32_member {
14326 return 10;
14327 }
14328 if let Some(_) = self.uint64_member {
14329 return 9;
14330 }
14331 if let Some(_) = self.uint32_member {
14332 return 8;
14333 }
14334 if let Some(_) = self.uint16_member {
14335 return 7;
14336 }
14337 if let Some(_) = self.uint8_member {
14338 return 6;
14339 }
14340 if let Some(_) = self.int64_member {
14341 return 5;
14342 }
14343 if let Some(_) = self.int32_member {
14344 return 4;
14345 }
14346 if let Some(_) = self.int16_member {
14347 return 3;
14348 }
14349 if let Some(_) = self.int8_member {
14350 return 2;
14351 }
14352 if let Some(_) = self.bool_member {
14353 return 1;
14354 }
14355 0
14356 }
14357 }
14358
14359 impl fidl::encoding::ResourceTypeMarker for AllTypesTable {
14360 type Borrowed<'a> = &'a mut Self;
14361 fn take_or_borrow<'a>(
14362 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
14363 ) -> Self::Borrowed<'a> {
14364 value
14365 }
14366 }
14367
14368 unsafe impl fidl::encoding::TypeMarker for AllTypesTable {
14369 type Owned = Self;
14370
14371 #[inline(always)]
14372 fn inline_align(_context: fidl::encoding::Context) -> usize {
14373 8
14374 }
14375
14376 #[inline(always)]
14377 fn inline_size(_context: fidl::encoding::Context) -> usize {
14378 16
14379 }
14380 }
14381
14382 unsafe impl fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>
14383 for &mut AllTypesTable
14384 {
14385 unsafe fn encode(
14386 self,
14387 encoder: &mut fidl::encoding::Encoder<
14388 '_,
14389 fidl::encoding::DefaultFuchsiaResourceDialect,
14390 >,
14391 offset: usize,
14392 mut depth: fidl::encoding::Depth,
14393 ) -> fidl::Result<()> {
14394 encoder.debug_check_bounds::<AllTypesTable>(offset);
14395 let max_ordinal: u64 = self.max_ordinal_present();
14397 encoder.write_num(max_ordinal, offset);
14398 encoder.write_num(fidl::encoding::ALLOC_PRESENT_U64, offset + 8);
14399 if max_ordinal == 0 {
14401 return Ok(());
14402 }
14403 depth.increment()?;
14404 let envelope_size = 8;
14405 let bytes_len = max_ordinal as usize * envelope_size;
14406 #[allow(unused_variables)]
14407 let offset = encoder.out_of_line_offset(bytes_len);
14408 let mut _prev_end_offset: usize = 0;
14409 if 1 > max_ordinal {
14410 return Ok(());
14411 }
14412
14413 let cur_offset: usize = (1 - 1) * envelope_size;
14416
14417 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14419
14420 fidl::encoding::encode_in_envelope_optional::<
14425 bool,
14426 fidl::encoding::DefaultFuchsiaResourceDialect,
14427 >(
14428 self.bool_member.as_ref().map(<bool as fidl::encoding::ValueTypeMarker>::borrow),
14429 encoder,
14430 offset + cur_offset,
14431 depth,
14432 )?;
14433
14434 _prev_end_offset = cur_offset + envelope_size;
14435 if 2 > max_ordinal {
14436 return Ok(());
14437 }
14438
14439 let cur_offset: usize = (2 - 1) * envelope_size;
14442
14443 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14445
14446 fidl::encoding::encode_in_envelope_optional::<
14451 i8,
14452 fidl::encoding::DefaultFuchsiaResourceDialect,
14453 >(
14454 self.int8_member.as_ref().map(<i8 as fidl::encoding::ValueTypeMarker>::borrow),
14455 encoder,
14456 offset + cur_offset,
14457 depth,
14458 )?;
14459
14460 _prev_end_offset = cur_offset + envelope_size;
14461 if 3 > max_ordinal {
14462 return Ok(());
14463 }
14464
14465 let cur_offset: usize = (3 - 1) * envelope_size;
14468
14469 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14471
14472 fidl::encoding::encode_in_envelope_optional::<
14477 i16,
14478 fidl::encoding::DefaultFuchsiaResourceDialect,
14479 >(
14480 self.int16_member.as_ref().map(<i16 as fidl::encoding::ValueTypeMarker>::borrow),
14481 encoder,
14482 offset + cur_offset,
14483 depth,
14484 )?;
14485
14486 _prev_end_offset = cur_offset + envelope_size;
14487 if 4 > max_ordinal {
14488 return Ok(());
14489 }
14490
14491 let cur_offset: usize = (4 - 1) * envelope_size;
14494
14495 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14497
14498 fidl::encoding::encode_in_envelope_optional::<
14503 i32,
14504 fidl::encoding::DefaultFuchsiaResourceDialect,
14505 >(
14506 self.int32_member.as_ref().map(<i32 as fidl::encoding::ValueTypeMarker>::borrow),
14507 encoder,
14508 offset + cur_offset,
14509 depth,
14510 )?;
14511
14512 _prev_end_offset = cur_offset + envelope_size;
14513 if 5 > max_ordinal {
14514 return Ok(());
14515 }
14516
14517 let cur_offset: usize = (5 - 1) * envelope_size;
14520
14521 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14523
14524 fidl::encoding::encode_in_envelope_optional::<
14529 i64,
14530 fidl::encoding::DefaultFuchsiaResourceDialect,
14531 >(
14532 self.int64_member.as_ref().map(<i64 as fidl::encoding::ValueTypeMarker>::borrow),
14533 encoder,
14534 offset + cur_offset,
14535 depth,
14536 )?;
14537
14538 _prev_end_offset = cur_offset + envelope_size;
14539 if 6 > max_ordinal {
14540 return Ok(());
14541 }
14542
14543 let cur_offset: usize = (6 - 1) * envelope_size;
14546
14547 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14549
14550 fidl::encoding::encode_in_envelope_optional::<
14555 u8,
14556 fidl::encoding::DefaultFuchsiaResourceDialect,
14557 >(
14558 self.uint8_member.as_ref().map(<u8 as fidl::encoding::ValueTypeMarker>::borrow),
14559 encoder,
14560 offset + cur_offset,
14561 depth,
14562 )?;
14563
14564 _prev_end_offset = cur_offset + envelope_size;
14565 if 7 > max_ordinal {
14566 return Ok(());
14567 }
14568
14569 let cur_offset: usize = (7 - 1) * envelope_size;
14572
14573 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14575
14576 fidl::encoding::encode_in_envelope_optional::<
14581 u16,
14582 fidl::encoding::DefaultFuchsiaResourceDialect,
14583 >(
14584 self.uint16_member.as_ref().map(<u16 as fidl::encoding::ValueTypeMarker>::borrow),
14585 encoder,
14586 offset + cur_offset,
14587 depth,
14588 )?;
14589
14590 _prev_end_offset = cur_offset + envelope_size;
14591 if 8 > max_ordinal {
14592 return Ok(());
14593 }
14594
14595 let cur_offset: usize = (8 - 1) * envelope_size;
14598
14599 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14601
14602 fidl::encoding::encode_in_envelope_optional::<
14607 u32,
14608 fidl::encoding::DefaultFuchsiaResourceDialect,
14609 >(
14610 self.uint32_member.as_ref().map(<u32 as fidl::encoding::ValueTypeMarker>::borrow),
14611 encoder,
14612 offset + cur_offset,
14613 depth,
14614 )?;
14615
14616 _prev_end_offset = cur_offset + envelope_size;
14617 if 9 > max_ordinal {
14618 return Ok(());
14619 }
14620
14621 let cur_offset: usize = (9 - 1) * envelope_size;
14624
14625 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14627
14628 fidl::encoding::encode_in_envelope_optional::<
14633 u64,
14634 fidl::encoding::DefaultFuchsiaResourceDialect,
14635 >(
14636 self.uint64_member.as_ref().map(<u64 as fidl::encoding::ValueTypeMarker>::borrow),
14637 encoder,
14638 offset + cur_offset,
14639 depth,
14640 )?;
14641
14642 _prev_end_offset = cur_offset + envelope_size;
14643 if 10 > max_ordinal {
14644 return Ok(());
14645 }
14646
14647 let cur_offset: usize = (10 - 1) * envelope_size;
14650
14651 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14653
14654 fidl::encoding::encode_in_envelope_optional::<
14659 f32,
14660 fidl::encoding::DefaultFuchsiaResourceDialect,
14661 >(
14662 self.float32_member.as_ref().map(<f32 as fidl::encoding::ValueTypeMarker>::borrow),
14663 encoder,
14664 offset + cur_offset,
14665 depth,
14666 )?;
14667
14668 _prev_end_offset = cur_offset + envelope_size;
14669 if 11 > max_ordinal {
14670 return Ok(());
14671 }
14672
14673 let cur_offset: usize = (11 - 1) * envelope_size;
14676
14677 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14679
14680 fidl::encoding::encode_in_envelope_optional::<
14685 f64,
14686 fidl::encoding::DefaultFuchsiaResourceDialect,
14687 >(
14688 self.float64_member.as_ref().map(<f64 as fidl::encoding::ValueTypeMarker>::borrow),
14689 encoder,
14690 offset + cur_offset,
14691 depth,
14692 )?;
14693
14694 _prev_end_offset = cur_offset + envelope_size;
14695 if 12 > max_ordinal {
14696 return Ok(());
14697 }
14698
14699 let cur_offset: usize = (12 - 1) * envelope_size;
14702
14703 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14705
14706 fidl::encoding::encode_in_envelope_optional::<
14711 DefaultEnum,
14712 fidl::encoding::DefaultFuchsiaResourceDialect,
14713 >(
14714 self.enum_member
14715 .as_ref()
14716 .map(<DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow),
14717 encoder,
14718 offset + cur_offset,
14719 depth,
14720 )?;
14721
14722 _prev_end_offset = cur_offset + envelope_size;
14723 if 13 > max_ordinal {
14724 return Ok(());
14725 }
14726
14727 let cur_offset: usize = (13 - 1) * envelope_size;
14730
14731 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14733
14734 fidl::encoding::encode_in_envelope_optional::<
14739 DefaultBits,
14740 fidl::encoding::DefaultFuchsiaResourceDialect,
14741 >(
14742 self.bits_member
14743 .as_ref()
14744 .map(<DefaultBits as fidl::encoding::ValueTypeMarker>::borrow),
14745 encoder,
14746 offset + cur_offset,
14747 depth,
14748 )?;
14749
14750 _prev_end_offset = cur_offset + envelope_size;
14751 if 14 > max_ordinal {
14752 return Ok(());
14753 }
14754
14755 let cur_offset: usize = (14 - 1) * envelope_size;
14758
14759 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14761
14762 fidl::encoding::encode_in_envelope_optional::<
14767 fidl::encoding::HandleType<
14768 fidl::Handle,
14769 { fidl::ObjectType::NONE.into_raw() },
14770 2147483648,
14771 >,
14772 fidl::encoding::DefaultFuchsiaResourceDialect,
14773 >(
14774 self.handle_member.as_mut().map(
14775 <fidl::encoding::HandleType<
14776 fidl::Handle,
14777 { fidl::ObjectType::NONE.into_raw() },
14778 2147483648,
14779 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow,
14780 ),
14781 encoder,
14782 offset + cur_offset,
14783 depth,
14784 )?;
14785
14786 _prev_end_offset = cur_offset + envelope_size;
14787 if 15 > max_ordinal {
14788 return Ok(());
14789 }
14790
14791 let cur_offset: usize = (15 - 1) * envelope_size;
14794
14795 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14797
14798 fidl::encoding::encode_in_envelope_optional::<
14803 fidl::encoding::UnboundedString,
14804 fidl::encoding::DefaultFuchsiaResourceDialect,
14805 >(
14806 self.string_member.as_ref().map(
14807 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow,
14808 ),
14809 encoder,
14810 offset + cur_offset,
14811 depth,
14812 )?;
14813
14814 _prev_end_offset = cur_offset + envelope_size;
14815 if 16 > max_ordinal {
14816 return Ok(());
14817 }
14818
14819 let cur_offset: usize = (16 - 1) * envelope_size;
14822
14823 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14825
14826 fidl::encoding::encode_in_envelope_optional::<
14831 ThisIsAStruct,
14832 fidl::encoding::DefaultFuchsiaResourceDialect,
14833 >(
14834 self.struct_member
14835 .as_ref()
14836 .map(<ThisIsAStruct as fidl::encoding::ValueTypeMarker>::borrow),
14837 encoder,
14838 offset + cur_offset,
14839 depth,
14840 )?;
14841
14842 _prev_end_offset = cur_offset + envelope_size;
14843 if 17 > max_ordinal {
14844 return Ok(());
14845 }
14846
14847 let cur_offset: usize = (17 - 1) * envelope_size;
14850
14851 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14853
14854 fidl::encoding::encode_in_envelope_optional::<
14859 ThisIsAUnion,
14860 fidl::encoding::DefaultFuchsiaResourceDialect,
14861 >(
14862 self.union_member
14863 .as_ref()
14864 .map(<ThisIsAUnion as fidl::encoding::ValueTypeMarker>::borrow),
14865 encoder,
14866 offset + cur_offset,
14867 depth,
14868 )?;
14869
14870 _prev_end_offset = cur_offset + envelope_size;
14871 if 18 > max_ordinal {
14872 return Ok(());
14873 }
14874
14875 let cur_offset: usize = (18 - 1) * envelope_size;
14878
14879 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14881
14882 fidl::encoding::encode_in_envelope_optional::<
14887 fidl::encoding::Array<u32, 3>,
14888 fidl::encoding::DefaultFuchsiaResourceDialect,
14889 >(
14890 self.array_member.as_ref().map(
14891 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow,
14892 ),
14893 encoder,
14894 offset + cur_offset,
14895 depth,
14896 )?;
14897
14898 _prev_end_offset = cur_offset + envelope_size;
14899 if 19 > max_ordinal {
14900 return Ok(());
14901 }
14902
14903 let cur_offset: usize = (19 - 1) * envelope_size;
14906
14907 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14909
14910 fidl::encoding::encode_in_envelope_optional::<fidl::encoding::UnboundedVector<u32>, fidl::encoding::DefaultFuchsiaResourceDialect>(
14915 self.vector_member.as_ref().map(<fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow),
14916 encoder, offset + cur_offset, depth
14917 )?;
14918
14919 _prev_end_offset = cur_offset + envelope_size;
14920 if 20 > max_ordinal {
14921 return Ok(());
14922 }
14923
14924 let cur_offset: usize = (20 - 1) * envelope_size;
14927
14928 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14930
14931 fidl::encoding::encode_in_envelope_optional::<
14936 ThisIsATable,
14937 fidl::encoding::DefaultFuchsiaResourceDialect,
14938 >(
14939 self.table_member
14940 .as_ref()
14941 .map(<ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow),
14942 encoder,
14943 offset + cur_offset,
14944 depth,
14945 )?;
14946
14947 _prev_end_offset = cur_offset + envelope_size;
14948 if 21 > max_ordinal {
14949 return Ok(());
14950 }
14951
14952 let cur_offset: usize = (21 - 1) * envelope_size;
14955
14956 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14958
14959 fidl::encoding::encode_in_envelope_optional::<
14964 ThisIsAXunion,
14965 fidl::encoding::DefaultFuchsiaResourceDialect,
14966 >(
14967 self.xunion_member
14968 .as_ref()
14969 .map(<ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow),
14970 encoder,
14971 offset + cur_offset,
14972 depth,
14973 )?;
14974
14975 _prev_end_offset = cur_offset + envelope_size;
14976
14977 Ok(())
14978 }
14979 }
14980
14981 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for AllTypesTable {
14982 #[inline(always)]
14983 fn new_empty() -> Self {
14984 Self::default()
14985 }
14986
14987 unsafe fn decode(
14988 &mut self,
14989 decoder: &mut fidl::encoding::Decoder<
14990 '_,
14991 fidl::encoding::DefaultFuchsiaResourceDialect,
14992 >,
14993 offset: usize,
14994 mut depth: fidl::encoding::Depth,
14995 ) -> fidl::Result<()> {
14996 decoder.debug_check_bounds::<Self>(offset);
14997 let len = match fidl::encoding::decode_vector_header(decoder, offset)? {
14998 None => return Err(fidl::Error::NotNullable),
14999 Some(len) => len,
15000 };
15001 if len == 0 {
15003 return Ok(());
15004 };
15005 depth.increment()?;
15006 let envelope_size = 8;
15007 let bytes_len = len * envelope_size;
15008 let offset = decoder.out_of_line_offset(bytes_len)?;
15009 let mut _next_ordinal_to_read = 0;
15011 let mut next_offset = offset;
15012 let end_offset = offset + bytes_len;
15013 _next_ordinal_to_read += 1;
15014 if next_offset >= end_offset {
15015 return Ok(());
15016 }
15017
15018 while _next_ordinal_to_read < 1 {
15020 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15021 _next_ordinal_to_read += 1;
15022 next_offset += envelope_size;
15023 }
15024
15025 let next_out_of_line = decoder.next_out_of_line();
15026 let handles_before = decoder.remaining_handles();
15027 if let Some((inlined, num_bytes, num_handles)) =
15028 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15029 {
15030 let member_inline_size =
15031 <bool as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15032 if inlined != (member_inline_size <= 4) {
15033 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15034 }
15035 let inner_offset;
15036 let mut inner_depth = depth.clone();
15037 if inlined {
15038 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15039 inner_offset = next_offset;
15040 } else {
15041 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15042 inner_depth.increment()?;
15043 }
15044 let val_ref = self.bool_member.get_or_insert_with(|| {
15045 fidl::new_empty!(bool, fidl::encoding::DefaultFuchsiaResourceDialect)
15046 });
15047 fidl::decode!(
15048 bool,
15049 fidl::encoding::DefaultFuchsiaResourceDialect,
15050 val_ref,
15051 decoder,
15052 inner_offset,
15053 inner_depth
15054 )?;
15055 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15056 {
15057 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15058 }
15059 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15060 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15061 }
15062 }
15063
15064 next_offset += envelope_size;
15065 _next_ordinal_to_read += 1;
15066 if next_offset >= end_offset {
15067 return Ok(());
15068 }
15069
15070 while _next_ordinal_to_read < 2 {
15072 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15073 _next_ordinal_to_read += 1;
15074 next_offset += envelope_size;
15075 }
15076
15077 let next_out_of_line = decoder.next_out_of_line();
15078 let handles_before = decoder.remaining_handles();
15079 if let Some((inlined, num_bytes, num_handles)) =
15080 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15081 {
15082 let member_inline_size =
15083 <i8 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15084 if inlined != (member_inline_size <= 4) {
15085 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15086 }
15087 let inner_offset;
15088 let mut inner_depth = depth.clone();
15089 if inlined {
15090 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15091 inner_offset = next_offset;
15092 } else {
15093 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15094 inner_depth.increment()?;
15095 }
15096 let val_ref = self.int8_member.get_or_insert_with(|| {
15097 fidl::new_empty!(i8, fidl::encoding::DefaultFuchsiaResourceDialect)
15098 });
15099 fidl::decode!(
15100 i8,
15101 fidl::encoding::DefaultFuchsiaResourceDialect,
15102 val_ref,
15103 decoder,
15104 inner_offset,
15105 inner_depth
15106 )?;
15107 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15108 {
15109 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15110 }
15111 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15112 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15113 }
15114 }
15115
15116 next_offset += envelope_size;
15117 _next_ordinal_to_read += 1;
15118 if next_offset >= end_offset {
15119 return Ok(());
15120 }
15121
15122 while _next_ordinal_to_read < 3 {
15124 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15125 _next_ordinal_to_read += 1;
15126 next_offset += envelope_size;
15127 }
15128
15129 let next_out_of_line = decoder.next_out_of_line();
15130 let handles_before = decoder.remaining_handles();
15131 if let Some((inlined, num_bytes, num_handles)) =
15132 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15133 {
15134 let member_inline_size =
15135 <i16 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15136 if inlined != (member_inline_size <= 4) {
15137 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15138 }
15139 let inner_offset;
15140 let mut inner_depth = depth.clone();
15141 if inlined {
15142 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15143 inner_offset = next_offset;
15144 } else {
15145 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15146 inner_depth.increment()?;
15147 }
15148 let val_ref = self.int16_member.get_or_insert_with(|| {
15149 fidl::new_empty!(i16, fidl::encoding::DefaultFuchsiaResourceDialect)
15150 });
15151 fidl::decode!(
15152 i16,
15153 fidl::encoding::DefaultFuchsiaResourceDialect,
15154 val_ref,
15155 decoder,
15156 inner_offset,
15157 inner_depth
15158 )?;
15159 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15160 {
15161 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15162 }
15163 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15164 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15165 }
15166 }
15167
15168 next_offset += envelope_size;
15169 _next_ordinal_to_read += 1;
15170 if next_offset >= end_offset {
15171 return Ok(());
15172 }
15173
15174 while _next_ordinal_to_read < 4 {
15176 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15177 _next_ordinal_to_read += 1;
15178 next_offset += envelope_size;
15179 }
15180
15181 let next_out_of_line = decoder.next_out_of_line();
15182 let handles_before = decoder.remaining_handles();
15183 if let Some((inlined, num_bytes, num_handles)) =
15184 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15185 {
15186 let member_inline_size =
15187 <i32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15188 if inlined != (member_inline_size <= 4) {
15189 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15190 }
15191 let inner_offset;
15192 let mut inner_depth = depth.clone();
15193 if inlined {
15194 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15195 inner_offset = next_offset;
15196 } else {
15197 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15198 inner_depth.increment()?;
15199 }
15200 let val_ref = self.int32_member.get_or_insert_with(|| {
15201 fidl::new_empty!(i32, fidl::encoding::DefaultFuchsiaResourceDialect)
15202 });
15203 fidl::decode!(
15204 i32,
15205 fidl::encoding::DefaultFuchsiaResourceDialect,
15206 val_ref,
15207 decoder,
15208 inner_offset,
15209 inner_depth
15210 )?;
15211 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15212 {
15213 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15214 }
15215 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15216 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15217 }
15218 }
15219
15220 next_offset += envelope_size;
15221 _next_ordinal_to_read += 1;
15222 if next_offset >= end_offset {
15223 return Ok(());
15224 }
15225
15226 while _next_ordinal_to_read < 5 {
15228 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15229 _next_ordinal_to_read += 1;
15230 next_offset += envelope_size;
15231 }
15232
15233 let next_out_of_line = decoder.next_out_of_line();
15234 let handles_before = decoder.remaining_handles();
15235 if let Some((inlined, num_bytes, num_handles)) =
15236 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15237 {
15238 let member_inline_size =
15239 <i64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15240 if inlined != (member_inline_size <= 4) {
15241 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15242 }
15243 let inner_offset;
15244 let mut inner_depth = depth.clone();
15245 if inlined {
15246 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15247 inner_offset = next_offset;
15248 } else {
15249 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15250 inner_depth.increment()?;
15251 }
15252 let val_ref = self.int64_member.get_or_insert_with(|| {
15253 fidl::new_empty!(i64, fidl::encoding::DefaultFuchsiaResourceDialect)
15254 });
15255 fidl::decode!(
15256 i64,
15257 fidl::encoding::DefaultFuchsiaResourceDialect,
15258 val_ref,
15259 decoder,
15260 inner_offset,
15261 inner_depth
15262 )?;
15263 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15264 {
15265 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15266 }
15267 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15268 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15269 }
15270 }
15271
15272 next_offset += envelope_size;
15273 _next_ordinal_to_read += 1;
15274 if next_offset >= end_offset {
15275 return Ok(());
15276 }
15277
15278 while _next_ordinal_to_read < 6 {
15280 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15281 _next_ordinal_to_read += 1;
15282 next_offset += envelope_size;
15283 }
15284
15285 let next_out_of_line = decoder.next_out_of_line();
15286 let handles_before = decoder.remaining_handles();
15287 if let Some((inlined, num_bytes, num_handles)) =
15288 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15289 {
15290 let member_inline_size =
15291 <u8 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15292 if inlined != (member_inline_size <= 4) {
15293 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15294 }
15295 let inner_offset;
15296 let mut inner_depth = depth.clone();
15297 if inlined {
15298 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15299 inner_offset = next_offset;
15300 } else {
15301 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15302 inner_depth.increment()?;
15303 }
15304 let val_ref = self.uint8_member.get_or_insert_with(|| {
15305 fidl::new_empty!(u8, fidl::encoding::DefaultFuchsiaResourceDialect)
15306 });
15307 fidl::decode!(
15308 u8,
15309 fidl::encoding::DefaultFuchsiaResourceDialect,
15310 val_ref,
15311 decoder,
15312 inner_offset,
15313 inner_depth
15314 )?;
15315 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15316 {
15317 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15318 }
15319 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15320 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15321 }
15322 }
15323
15324 next_offset += envelope_size;
15325 _next_ordinal_to_read += 1;
15326 if next_offset >= end_offset {
15327 return Ok(());
15328 }
15329
15330 while _next_ordinal_to_read < 7 {
15332 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15333 _next_ordinal_to_read += 1;
15334 next_offset += envelope_size;
15335 }
15336
15337 let next_out_of_line = decoder.next_out_of_line();
15338 let handles_before = decoder.remaining_handles();
15339 if let Some((inlined, num_bytes, num_handles)) =
15340 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15341 {
15342 let member_inline_size =
15343 <u16 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15344 if inlined != (member_inline_size <= 4) {
15345 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15346 }
15347 let inner_offset;
15348 let mut inner_depth = depth.clone();
15349 if inlined {
15350 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15351 inner_offset = next_offset;
15352 } else {
15353 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15354 inner_depth.increment()?;
15355 }
15356 let val_ref = self.uint16_member.get_or_insert_with(|| {
15357 fidl::new_empty!(u16, fidl::encoding::DefaultFuchsiaResourceDialect)
15358 });
15359 fidl::decode!(
15360 u16,
15361 fidl::encoding::DefaultFuchsiaResourceDialect,
15362 val_ref,
15363 decoder,
15364 inner_offset,
15365 inner_depth
15366 )?;
15367 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15368 {
15369 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15370 }
15371 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15372 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15373 }
15374 }
15375
15376 next_offset += envelope_size;
15377 _next_ordinal_to_read += 1;
15378 if next_offset >= end_offset {
15379 return Ok(());
15380 }
15381
15382 while _next_ordinal_to_read < 8 {
15384 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15385 _next_ordinal_to_read += 1;
15386 next_offset += envelope_size;
15387 }
15388
15389 let next_out_of_line = decoder.next_out_of_line();
15390 let handles_before = decoder.remaining_handles();
15391 if let Some((inlined, num_bytes, num_handles)) =
15392 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15393 {
15394 let member_inline_size =
15395 <u32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15396 if inlined != (member_inline_size <= 4) {
15397 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15398 }
15399 let inner_offset;
15400 let mut inner_depth = depth.clone();
15401 if inlined {
15402 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15403 inner_offset = next_offset;
15404 } else {
15405 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15406 inner_depth.increment()?;
15407 }
15408 let val_ref = self.uint32_member.get_or_insert_with(|| {
15409 fidl::new_empty!(u32, fidl::encoding::DefaultFuchsiaResourceDialect)
15410 });
15411 fidl::decode!(
15412 u32,
15413 fidl::encoding::DefaultFuchsiaResourceDialect,
15414 val_ref,
15415 decoder,
15416 inner_offset,
15417 inner_depth
15418 )?;
15419 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15420 {
15421 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15422 }
15423 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15424 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15425 }
15426 }
15427
15428 next_offset += envelope_size;
15429 _next_ordinal_to_read += 1;
15430 if next_offset >= end_offset {
15431 return Ok(());
15432 }
15433
15434 while _next_ordinal_to_read < 9 {
15436 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15437 _next_ordinal_to_read += 1;
15438 next_offset += envelope_size;
15439 }
15440
15441 let next_out_of_line = decoder.next_out_of_line();
15442 let handles_before = decoder.remaining_handles();
15443 if let Some((inlined, num_bytes, num_handles)) =
15444 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15445 {
15446 let member_inline_size =
15447 <u64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15448 if inlined != (member_inline_size <= 4) {
15449 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15450 }
15451 let inner_offset;
15452 let mut inner_depth = depth.clone();
15453 if inlined {
15454 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15455 inner_offset = next_offset;
15456 } else {
15457 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15458 inner_depth.increment()?;
15459 }
15460 let val_ref = self.uint64_member.get_or_insert_with(|| {
15461 fidl::new_empty!(u64, fidl::encoding::DefaultFuchsiaResourceDialect)
15462 });
15463 fidl::decode!(
15464 u64,
15465 fidl::encoding::DefaultFuchsiaResourceDialect,
15466 val_ref,
15467 decoder,
15468 inner_offset,
15469 inner_depth
15470 )?;
15471 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15472 {
15473 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15474 }
15475 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15476 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15477 }
15478 }
15479
15480 next_offset += envelope_size;
15481 _next_ordinal_to_read += 1;
15482 if next_offset >= end_offset {
15483 return Ok(());
15484 }
15485
15486 while _next_ordinal_to_read < 10 {
15488 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15489 _next_ordinal_to_read += 1;
15490 next_offset += envelope_size;
15491 }
15492
15493 let next_out_of_line = decoder.next_out_of_line();
15494 let handles_before = decoder.remaining_handles();
15495 if let Some((inlined, num_bytes, num_handles)) =
15496 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15497 {
15498 let member_inline_size =
15499 <f32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15500 if inlined != (member_inline_size <= 4) {
15501 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15502 }
15503 let inner_offset;
15504 let mut inner_depth = depth.clone();
15505 if inlined {
15506 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15507 inner_offset = next_offset;
15508 } else {
15509 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15510 inner_depth.increment()?;
15511 }
15512 let val_ref = self.float32_member.get_or_insert_with(|| {
15513 fidl::new_empty!(f32, fidl::encoding::DefaultFuchsiaResourceDialect)
15514 });
15515 fidl::decode!(
15516 f32,
15517 fidl::encoding::DefaultFuchsiaResourceDialect,
15518 val_ref,
15519 decoder,
15520 inner_offset,
15521 inner_depth
15522 )?;
15523 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15524 {
15525 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15526 }
15527 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15528 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15529 }
15530 }
15531
15532 next_offset += envelope_size;
15533 _next_ordinal_to_read += 1;
15534 if next_offset >= end_offset {
15535 return Ok(());
15536 }
15537
15538 while _next_ordinal_to_read < 11 {
15540 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15541 _next_ordinal_to_read += 1;
15542 next_offset += envelope_size;
15543 }
15544
15545 let next_out_of_line = decoder.next_out_of_line();
15546 let handles_before = decoder.remaining_handles();
15547 if let Some((inlined, num_bytes, num_handles)) =
15548 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15549 {
15550 let member_inline_size =
15551 <f64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15552 if inlined != (member_inline_size <= 4) {
15553 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15554 }
15555 let inner_offset;
15556 let mut inner_depth = depth.clone();
15557 if inlined {
15558 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15559 inner_offset = next_offset;
15560 } else {
15561 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15562 inner_depth.increment()?;
15563 }
15564 let val_ref = self.float64_member.get_or_insert_with(|| {
15565 fidl::new_empty!(f64, fidl::encoding::DefaultFuchsiaResourceDialect)
15566 });
15567 fidl::decode!(
15568 f64,
15569 fidl::encoding::DefaultFuchsiaResourceDialect,
15570 val_ref,
15571 decoder,
15572 inner_offset,
15573 inner_depth
15574 )?;
15575 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15576 {
15577 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15578 }
15579 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15580 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15581 }
15582 }
15583
15584 next_offset += envelope_size;
15585 _next_ordinal_to_read += 1;
15586 if next_offset >= end_offset {
15587 return Ok(());
15588 }
15589
15590 while _next_ordinal_to_read < 12 {
15592 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15593 _next_ordinal_to_read += 1;
15594 next_offset += envelope_size;
15595 }
15596
15597 let next_out_of_line = decoder.next_out_of_line();
15598 let handles_before = decoder.remaining_handles();
15599 if let Some((inlined, num_bytes, num_handles)) =
15600 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15601 {
15602 let member_inline_size =
15603 <DefaultEnum as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15604 if inlined != (member_inline_size <= 4) {
15605 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15606 }
15607 let inner_offset;
15608 let mut inner_depth = depth.clone();
15609 if inlined {
15610 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15611 inner_offset = next_offset;
15612 } else {
15613 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15614 inner_depth.increment()?;
15615 }
15616 let val_ref = self.enum_member.get_or_insert_with(|| {
15617 fidl::new_empty!(DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect)
15618 });
15619 fidl::decode!(
15620 DefaultEnum,
15621 fidl::encoding::DefaultFuchsiaResourceDialect,
15622 val_ref,
15623 decoder,
15624 inner_offset,
15625 inner_depth
15626 )?;
15627 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15628 {
15629 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15630 }
15631 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15632 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15633 }
15634 }
15635
15636 next_offset += envelope_size;
15637 _next_ordinal_to_read += 1;
15638 if next_offset >= end_offset {
15639 return Ok(());
15640 }
15641
15642 while _next_ordinal_to_read < 13 {
15644 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15645 _next_ordinal_to_read += 1;
15646 next_offset += envelope_size;
15647 }
15648
15649 let next_out_of_line = decoder.next_out_of_line();
15650 let handles_before = decoder.remaining_handles();
15651 if let Some((inlined, num_bytes, num_handles)) =
15652 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15653 {
15654 let member_inline_size =
15655 <DefaultBits as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15656 if inlined != (member_inline_size <= 4) {
15657 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15658 }
15659 let inner_offset;
15660 let mut inner_depth = depth.clone();
15661 if inlined {
15662 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15663 inner_offset = next_offset;
15664 } else {
15665 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15666 inner_depth.increment()?;
15667 }
15668 let val_ref = self.bits_member.get_or_insert_with(|| {
15669 fidl::new_empty!(DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect)
15670 });
15671 fidl::decode!(
15672 DefaultBits,
15673 fidl::encoding::DefaultFuchsiaResourceDialect,
15674 val_ref,
15675 decoder,
15676 inner_offset,
15677 inner_depth
15678 )?;
15679 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15680 {
15681 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15682 }
15683 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15684 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15685 }
15686 }
15687
15688 next_offset += envelope_size;
15689 _next_ordinal_to_read += 1;
15690 if next_offset >= end_offset {
15691 return Ok(());
15692 }
15693
15694 while _next_ordinal_to_read < 14 {
15696 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15697 _next_ordinal_to_read += 1;
15698 next_offset += envelope_size;
15699 }
15700
15701 let next_out_of_line = decoder.next_out_of_line();
15702 let handles_before = decoder.remaining_handles();
15703 if let Some((inlined, num_bytes, num_handles)) =
15704 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15705 {
15706 let member_inline_size = <fidl::encoding::HandleType<
15707 fidl::Handle,
15708 { fidl::ObjectType::NONE.into_raw() },
15709 2147483648,
15710 > as fidl::encoding::TypeMarker>::inline_size(
15711 decoder.context
15712 );
15713 if inlined != (member_inline_size <= 4) {
15714 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15715 }
15716 let inner_offset;
15717 let mut inner_depth = depth.clone();
15718 if inlined {
15719 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15720 inner_offset = next_offset;
15721 } else {
15722 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15723 inner_depth.increment()?;
15724 }
15725 let val_ref =
15726 self.handle_member.get_or_insert_with(|| fidl::new_empty!(fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect));
15727 fidl::decode!(fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, val_ref, decoder, inner_offset, inner_depth)?;
15728 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15729 {
15730 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15731 }
15732 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15733 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15734 }
15735 }
15736
15737 next_offset += envelope_size;
15738 _next_ordinal_to_read += 1;
15739 if next_offset >= end_offset {
15740 return Ok(());
15741 }
15742
15743 while _next_ordinal_to_read < 15 {
15745 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15746 _next_ordinal_to_read += 1;
15747 next_offset += envelope_size;
15748 }
15749
15750 let next_out_of_line = decoder.next_out_of_line();
15751 let handles_before = decoder.remaining_handles();
15752 if let Some((inlined, num_bytes, num_handles)) =
15753 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15754 {
15755 let member_inline_size =
15756 <fidl::encoding::UnboundedString as fidl::encoding::TypeMarker>::inline_size(
15757 decoder.context,
15758 );
15759 if inlined != (member_inline_size <= 4) {
15760 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15761 }
15762 let inner_offset;
15763 let mut inner_depth = depth.clone();
15764 if inlined {
15765 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15766 inner_offset = next_offset;
15767 } else {
15768 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15769 inner_depth.increment()?;
15770 }
15771 let val_ref = self.string_member.get_or_insert_with(|| {
15772 fidl::new_empty!(
15773 fidl::encoding::UnboundedString,
15774 fidl::encoding::DefaultFuchsiaResourceDialect
15775 )
15776 });
15777 fidl::decode!(
15778 fidl::encoding::UnboundedString,
15779 fidl::encoding::DefaultFuchsiaResourceDialect,
15780 val_ref,
15781 decoder,
15782 inner_offset,
15783 inner_depth
15784 )?;
15785 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15786 {
15787 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15788 }
15789 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15790 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15791 }
15792 }
15793
15794 next_offset += envelope_size;
15795 _next_ordinal_to_read += 1;
15796 if next_offset >= end_offset {
15797 return Ok(());
15798 }
15799
15800 while _next_ordinal_to_read < 16 {
15802 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15803 _next_ordinal_to_read += 1;
15804 next_offset += envelope_size;
15805 }
15806
15807 let next_out_of_line = decoder.next_out_of_line();
15808 let handles_before = decoder.remaining_handles();
15809 if let Some((inlined, num_bytes, num_handles)) =
15810 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15811 {
15812 let member_inline_size =
15813 <ThisIsAStruct as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15814 if inlined != (member_inline_size <= 4) {
15815 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15816 }
15817 let inner_offset;
15818 let mut inner_depth = depth.clone();
15819 if inlined {
15820 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15821 inner_offset = next_offset;
15822 } else {
15823 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15824 inner_depth.increment()?;
15825 }
15826 let val_ref = self.struct_member.get_or_insert_with(|| {
15827 fidl::new_empty!(ThisIsAStruct, fidl::encoding::DefaultFuchsiaResourceDialect)
15828 });
15829 fidl::decode!(
15830 ThisIsAStruct,
15831 fidl::encoding::DefaultFuchsiaResourceDialect,
15832 val_ref,
15833 decoder,
15834 inner_offset,
15835 inner_depth
15836 )?;
15837 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15838 {
15839 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15840 }
15841 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15842 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15843 }
15844 }
15845
15846 next_offset += envelope_size;
15847 _next_ordinal_to_read += 1;
15848 if next_offset >= end_offset {
15849 return Ok(());
15850 }
15851
15852 while _next_ordinal_to_read < 17 {
15854 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15855 _next_ordinal_to_read += 1;
15856 next_offset += envelope_size;
15857 }
15858
15859 let next_out_of_line = decoder.next_out_of_line();
15860 let handles_before = decoder.remaining_handles();
15861 if let Some((inlined, num_bytes, num_handles)) =
15862 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15863 {
15864 let member_inline_size =
15865 <ThisIsAUnion as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15866 if inlined != (member_inline_size <= 4) {
15867 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15868 }
15869 let inner_offset;
15870 let mut inner_depth = depth.clone();
15871 if inlined {
15872 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15873 inner_offset = next_offset;
15874 } else {
15875 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15876 inner_depth.increment()?;
15877 }
15878 let val_ref = self.union_member.get_or_insert_with(|| {
15879 fidl::new_empty!(ThisIsAUnion, fidl::encoding::DefaultFuchsiaResourceDialect)
15880 });
15881 fidl::decode!(
15882 ThisIsAUnion,
15883 fidl::encoding::DefaultFuchsiaResourceDialect,
15884 val_ref,
15885 decoder,
15886 inner_offset,
15887 inner_depth
15888 )?;
15889 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15890 {
15891 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15892 }
15893 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15894 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15895 }
15896 }
15897
15898 next_offset += envelope_size;
15899 _next_ordinal_to_read += 1;
15900 if next_offset >= end_offset {
15901 return Ok(());
15902 }
15903
15904 while _next_ordinal_to_read < 18 {
15906 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15907 _next_ordinal_to_read += 1;
15908 next_offset += envelope_size;
15909 }
15910
15911 let next_out_of_line = decoder.next_out_of_line();
15912 let handles_before = decoder.remaining_handles();
15913 if let Some((inlined, num_bytes, num_handles)) =
15914 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15915 {
15916 let member_inline_size =
15917 <fidl::encoding::Array<u32, 3> as fidl::encoding::TypeMarker>::inline_size(
15918 decoder.context,
15919 );
15920 if inlined != (member_inline_size <= 4) {
15921 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15922 }
15923 let inner_offset;
15924 let mut inner_depth = depth.clone();
15925 if inlined {
15926 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15927 inner_offset = next_offset;
15928 } else {
15929 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15930 inner_depth.increment()?;
15931 }
15932 let val_ref =
15933 self.array_member.get_or_insert_with(|| fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect));
15934 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, val_ref, decoder, inner_offset, inner_depth)?;
15935 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15936 {
15937 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15938 }
15939 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15940 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15941 }
15942 }
15943
15944 next_offset += envelope_size;
15945 _next_ordinal_to_read += 1;
15946 if next_offset >= end_offset {
15947 return Ok(());
15948 }
15949
15950 while _next_ordinal_to_read < 19 {
15952 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15953 _next_ordinal_to_read += 1;
15954 next_offset += envelope_size;
15955 }
15956
15957 let next_out_of_line = decoder.next_out_of_line();
15958 let handles_before = decoder.remaining_handles();
15959 if let Some((inlined, num_bytes, num_handles)) =
15960 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15961 {
15962 let member_inline_size = <fidl::encoding::UnboundedVector<u32> as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15963 if inlined != (member_inline_size <= 4) {
15964 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15965 }
15966 let inner_offset;
15967 let mut inner_depth = depth.clone();
15968 if inlined {
15969 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15970 inner_offset = next_offset;
15971 } else {
15972 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15973 inner_depth.increment()?;
15974 }
15975 let val_ref = self.vector_member.get_or_insert_with(|| {
15976 fidl::new_empty!(
15977 fidl::encoding::UnboundedVector<u32>,
15978 fidl::encoding::DefaultFuchsiaResourceDialect
15979 )
15980 });
15981 fidl::decode!(
15982 fidl::encoding::UnboundedVector<u32>,
15983 fidl::encoding::DefaultFuchsiaResourceDialect,
15984 val_ref,
15985 decoder,
15986 inner_offset,
15987 inner_depth
15988 )?;
15989 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15990 {
15991 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15992 }
15993 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15994 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15995 }
15996 }
15997
15998 next_offset += envelope_size;
15999 _next_ordinal_to_read += 1;
16000 if next_offset >= end_offset {
16001 return Ok(());
16002 }
16003
16004 while _next_ordinal_to_read < 20 {
16006 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16007 _next_ordinal_to_read += 1;
16008 next_offset += envelope_size;
16009 }
16010
16011 let next_out_of_line = decoder.next_out_of_line();
16012 let handles_before = decoder.remaining_handles();
16013 if let Some((inlined, num_bytes, num_handles)) =
16014 fidl::encoding::decode_envelope_header(decoder, next_offset)?
16015 {
16016 let member_inline_size =
16017 <ThisIsATable as fidl::encoding::TypeMarker>::inline_size(decoder.context);
16018 if inlined != (member_inline_size <= 4) {
16019 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16020 }
16021 let inner_offset;
16022 let mut inner_depth = depth.clone();
16023 if inlined {
16024 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
16025 inner_offset = next_offset;
16026 } else {
16027 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16028 inner_depth.increment()?;
16029 }
16030 let val_ref = self.table_member.get_or_insert_with(|| {
16031 fidl::new_empty!(ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect)
16032 });
16033 fidl::decode!(
16034 ThisIsATable,
16035 fidl::encoding::DefaultFuchsiaResourceDialect,
16036 val_ref,
16037 decoder,
16038 inner_offset,
16039 inner_depth
16040 )?;
16041 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
16042 {
16043 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16044 }
16045 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16046 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16047 }
16048 }
16049
16050 next_offset += envelope_size;
16051 _next_ordinal_to_read += 1;
16052 if next_offset >= end_offset {
16053 return Ok(());
16054 }
16055
16056 while _next_ordinal_to_read < 21 {
16058 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16059 _next_ordinal_to_read += 1;
16060 next_offset += envelope_size;
16061 }
16062
16063 let next_out_of_line = decoder.next_out_of_line();
16064 let handles_before = decoder.remaining_handles();
16065 if let Some((inlined, num_bytes, num_handles)) =
16066 fidl::encoding::decode_envelope_header(decoder, next_offset)?
16067 {
16068 let member_inline_size =
16069 <ThisIsAXunion as fidl::encoding::TypeMarker>::inline_size(decoder.context);
16070 if inlined != (member_inline_size <= 4) {
16071 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16072 }
16073 let inner_offset;
16074 let mut inner_depth = depth.clone();
16075 if inlined {
16076 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
16077 inner_offset = next_offset;
16078 } else {
16079 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16080 inner_depth.increment()?;
16081 }
16082 let val_ref = self.xunion_member.get_or_insert_with(|| {
16083 fidl::new_empty!(ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect)
16084 });
16085 fidl::decode!(
16086 ThisIsAXunion,
16087 fidl::encoding::DefaultFuchsiaResourceDialect,
16088 val_ref,
16089 decoder,
16090 inner_offset,
16091 inner_depth
16092 )?;
16093 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
16094 {
16095 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16096 }
16097 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16098 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16099 }
16100 }
16101
16102 next_offset += envelope_size;
16103
16104 while next_offset < end_offset {
16106 _next_ordinal_to_read += 1;
16107 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16108 next_offset += envelope_size;
16109 }
16110
16111 Ok(())
16112 }
16113 }
16114
16115 impl fidl::encoding::ResourceTypeMarker for AllTypesXunion {
16116 type Borrowed<'a> = &'a mut Self;
16117 fn take_or_borrow<'a>(
16118 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
16119 ) -> Self::Borrowed<'a> {
16120 value
16121 }
16122 }
16123
16124 unsafe impl fidl::encoding::TypeMarker for AllTypesXunion {
16125 type Owned = Self;
16126
16127 #[inline(always)]
16128 fn inline_align(_context: fidl::encoding::Context) -> usize {
16129 8
16130 }
16131
16132 #[inline(always)]
16133 fn inline_size(_context: fidl::encoding::Context) -> usize {
16134 16
16135 }
16136 }
16137
16138 unsafe impl
16139 fidl::encoding::Encode<AllTypesXunion, fidl::encoding::DefaultFuchsiaResourceDialect>
16140 for &mut AllTypesXunion
16141 {
16142 #[inline]
16143 unsafe fn encode(
16144 self,
16145 encoder: &mut fidl::encoding::Encoder<
16146 '_,
16147 fidl::encoding::DefaultFuchsiaResourceDialect,
16148 >,
16149 offset: usize,
16150 _depth: fidl::encoding::Depth,
16151 ) -> fidl::Result<()> {
16152 encoder.debug_check_bounds::<AllTypesXunion>(offset);
16153 encoder.write_num::<u64>(self.ordinal(), offset);
16154 match self {
16155 AllTypesXunion::BoolMember(ref val) => {
16156 fidl::encoding::encode_in_envelope::<bool, fidl::encoding::DefaultFuchsiaResourceDialect>(
16157 <bool as fidl::encoding::ValueTypeMarker>::borrow(val),
16158 encoder, offset + 8, _depth
16159 )
16160 }
16161 AllTypesXunion::Int8Member(ref val) => {
16162 fidl::encoding::encode_in_envelope::<i8, fidl::encoding::DefaultFuchsiaResourceDialect>(
16163 <i8 as fidl::encoding::ValueTypeMarker>::borrow(val),
16164 encoder, offset + 8, _depth
16165 )
16166 }
16167 AllTypesXunion::Int16Member(ref val) => {
16168 fidl::encoding::encode_in_envelope::<i16, fidl::encoding::DefaultFuchsiaResourceDialect>(
16169 <i16 as fidl::encoding::ValueTypeMarker>::borrow(val),
16170 encoder, offset + 8, _depth
16171 )
16172 }
16173 AllTypesXunion::Int32Member(ref val) => {
16174 fidl::encoding::encode_in_envelope::<i32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16175 <i32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16176 encoder, offset + 8, _depth
16177 )
16178 }
16179 AllTypesXunion::Int64Member(ref val) => {
16180 fidl::encoding::encode_in_envelope::<i64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16181 <i64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16182 encoder, offset + 8, _depth
16183 )
16184 }
16185 AllTypesXunion::Uint8Member(ref val) => {
16186 fidl::encoding::encode_in_envelope::<u8, fidl::encoding::DefaultFuchsiaResourceDialect>(
16187 <u8 as fidl::encoding::ValueTypeMarker>::borrow(val),
16188 encoder, offset + 8, _depth
16189 )
16190 }
16191 AllTypesXunion::Uint16Member(ref val) => {
16192 fidl::encoding::encode_in_envelope::<u16, fidl::encoding::DefaultFuchsiaResourceDialect>(
16193 <u16 as fidl::encoding::ValueTypeMarker>::borrow(val),
16194 encoder, offset + 8, _depth
16195 )
16196 }
16197 AllTypesXunion::Uint32Member(ref val) => {
16198 fidl::encoding::encode_in_envelope::<u32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16199 <u32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16200 encoder, offset + 8, _depth
16201 )
16202 }
16203 AllTypesXunion::Uint64Member(ref val) => {
16204 fidl::encoding::encode_in_envelope::<u64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16205 <u64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16206 encoder, offset + 8, _depth
16207 )
16208 }
16209 AllTypesXunion::Float32Member(ref val) => {
16210 fidl::encoding::encode_in_envelope::<f32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16211 <f32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16212 encoder, offset + 8, _depth
16213 )
16214 }
16215 AllTypesXunion::Float64Member(ref val) => {
16216 fidl::encoding::encode_in_envelope::<f64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16217 <f64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16218 encoder, offset + 8, _depth
16219 )
16220 }
16221 AllTypesXunion::EnumMember(ref val) => {
16222 fidl::encoding::encode_in_envelope::<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>(
16223 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(val),
16224 encoder, offset + 8, _depth
16225 )
16226 }
16227 AllTypesXunion::BitsMember(ref val) => {
16228 fidl::encoding::encode_in_envelope::<DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect>(
16229 <DefaultBits as fidl::encoding::ValueTypeMarker>::borrow(val),
16230 encoder, offset + 8, _depth
16231 )
16232 }
16233 AllTypesXunion::HandleMember(ref mut val) => {
16234 fidl::encoding::encode_in_envelope::<fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16235 <fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(val),
16236 encoder, offset + 8, _depth
16237 )
16238 }
16239 AllTypesXunion::StringMember(ref val) => {
16240 fidl::encoding::encode_in_envelope::<fidl::encoding::UnboundedString, fidl::encoding::DefaultFuchsiaResourceDialect>(
16241 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(val),
16242 encoder, offset + 8, _depth
16243 )
16244 }
16245 AllTypesXunion::StructMember(ref val) => {
16246 fidl::encoding::encode_in_envelope::<ThisIsAStruct, fidl::encoding::DefaultFuchsiaResourceDialect>(
16247 <ThisIsAStruct as fidl::encoding::ValueTypeMarker>::borrow(val),
16248 encoder, offset + 8, _depth
16249 )
16250 }
16251 AllTypesXunion::UnionMember(ref val) => {
16252 fidl::encoding::encode_in_envelope::<ThisIsAUnion, fidl::encoding::DefaultFuchsiaResourceDialect>(
16253 <ThisIsAUnion as fidl::encoding::ValueTypeMarker>::borrow(val),
16254 encoder, offset + 8, _depth
16255 )
16256 }
16257 AllTypesXunion::ArrayMember(ref val) => {
16258 fidl::encoding::encode_in_envelope::<fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16259 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(val),
16260 encoder, offset + 8, _depth
16261 )
16262 }
16263 AllTypesXunion::VectorMember(ref val) => {
16264 fidl::encoding::encode_in_envelope::<fidl::encoding::UnboundedVector<u32>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16265 <fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow(val),
16266 encoder, offset + 8, _depth
16267 )
16268 }
16269 AllTypesXunion::TableMember(ref val) => {
16270 fidl::encoding::encode_in_envelope::<ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect>(
16271 <ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow(val),
16272 encoder, offset + 8, _depth
16273 )
16274 }
16275 AllTypesXunion::XunionMember(ref val) => {
16276 fidl::encoding::encode_in_envelope::<ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect>(
16277 <ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow(val),
16278 encoder, offset + 8, _depth
16279 )
16280 }
16281 AllTypesXunion::__SourceBreaking { .. } => Err(fidl::Error::UnknownUnionTag),
16282 }
16283 }
16284 }
16285
16286 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
16287 for AllTypesXunion
16288 {
16289 #[inline(always)]
16290 fn new_empty() -> Self {
16291 Self::__SourceBreaking { unknown_ordinal: 0 }
16292 }
16293
16294 #[inline]
16295 unsafe fn decode(
16296 &mut self,
16297 decoder: &mut fidl::encoding::Decoder<
16298 '_,
16299 fidl::encoding::DefaultFuchsiaResourceDialect,
16300 >,
16301 offset: usize,
16302 mut depth: fidl::encoding::Depth,
16303 ) -> fidl::Result<()> {
16304 decoder.debug_check_bounds::<Self>(offset);
16305 #[allow(unused_variables)]
16306 let next_out_of_line = decoder.next_out_of_line();
16307 let handles_before = decoder.remaining_handles();
16308 let (ordinal, inlined, num_bytes, num_handles) =
16309 fidl::encoding::decode_union_inline_portion(decoder, offset)?;
16310
16311 let member_inline_size = match ordinal {
16312 1 => <bool as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16313 2 => <i8 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16314 3 => <i16 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16315 4 => <i32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16316 5 => <i64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16317 6 => <u8 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16318 7 => <u16 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16319 8 => <u32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16320 9 => <u64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16321 10 => <f32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16322 11 => <f64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16323 12 => <DefaultEnum as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16324 13 => <DefaultBits as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16325 14 => <fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16326 15 => <fidl::encoding::UnboundedString as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16327 16 => <ThisIsAStruct as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16328 17 => <ThisIsAUnion as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16329 18 => <fidl::encoding::Array<u32, 3> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16330 19 => <fidl::encoding::UnboundedVector<u32> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16331 20 => <ThisIsATable as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16332 21 => <ThisIsAXunion as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16333 0 => return Err(fidl::Error::UnknownUnionTag),
16334 _ => num_bytes as usize,
16335 };
16336
16337 if inlined != (member_inline_size <= 4) {
16338 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16339 }
16340 let _inner_offset;
16341 if inlined {
16342 decoder.check_inline_envelope_padding(offset + 8, member_inline_size)?;
16343 _inner_offset = offset + 8;
16344 } else {
16345 depth.increment()?;
16346 _inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16347 }
16348 match ordinal {
16349 1 => {
16350 #[allow(irrefutable_let_patterns)]
16351 if let AllTypesXunion::BoolMember(_) = self {
16352 } else {
16354 *self = AllTypesXunion::BoolMember(fidl::new_empty!(
16356 bool,
16357 fidl::encoding::DefaultFuchsiaResourceDialect
16358 ));
16359 }
16360 #[allow(irrefutable_let_patterns)]
16361 if let AllTypesXunion::BoolMember(ref mut val) = self {
16362 fidl::decode!(
16363 bool,
16364 fidl::encoding::DefaultFuchsiaResourceDialect,
16365 val,
16366 decoder,
16367 _inner_offset,
16368 depth
16369 )?;
16370 } else {
16371 unreachable!()
16372 }
16373 }
16374 2 => {
16375 #[allow(irrefutable_let_patterns)]
16376 if let AllTypesXunion::Int8Member(_) = self {
16377 } else {
16379 *self = AllTypesXunion::Int8Member(fidl::new_empty!(
16381 i8,
16382 fidl::encoding::DefaultFuchsiaResourceDialect
16383 ));
16384 }
16385 #[allow(irrefutable_let_patterns)]
16386 if let AllTypesXunion::Int8Member(ref mut val) = self {
16387 fidl::decode!(
16388 i8,
16389 fidl::encoding::DefaultFuchsiaResourceDialect,
16390 val,
16391 decoder,
16392 _inner_offset,
16393 depth
16394 )?;
16395 } else {
16396 unreachable!()
16397 }
16398 }
16399 3 => {
16400 #[allow(irrefutable_let_patterns)]
16401 if let AllTypesXunion::Int16Member(_) = self {
16402 } else {
16404 *self = AllTypesXunion::Int16Member(fidl::new_empty!(
16406 i16,
16407 fidl::encoding::DefaultFuchsiaResourceDialect
16408 ));
16409 }
16410 #[allow(irrefutable_let_patterns)]
16411 if let AllTypesXunion::Int16Member(ref mut val) = self {
16412 fidl::decode!(
16413 i16,
16414 fidl::encoding::DefaultFuchsiaResourceDialect,
16415 val,
16416 decoder,
16417 _inner_offset,
16418 depth
16419 )?;
16420 } else {
16421 unreachable!()
16422 }
16423 }
16424 4 => {
16425 #[allow(irrefutable_let_patterns)]
16426 if let AllTypesXunion::Int32Member(_) = self {
16427 } else {
16429 *self = AllTypesXunion::Int32Member(fidl::new_empty!(
16431 i32,
16432 fidl::encoding::DefaultFuchsiaResourceDialect
16433 ));
16434 }
16435 #[allow(irrefutable_let_patterns)]
16436 if let AllTypesXunion::Int32Member(ref mut val) = self {
16437 fidl::decode!(
16438 i32,
16439 fidl::encoding::DefaultFuchsiaResourceDialect,
16440 val,
16441 decoder,
16442 _inner_offset,
16443 depth
16444 )?;
16445 } else {
16446 unreachable!()
16447 }
16448 }
16449 5 => {
16450 #[allow(irrefutable_let_patterns)]
16451 if let AllTypesXunion::Int64Member(_) = self {
16452 } else {
16454 *self = AllTypesXunion::Int64Member(fidl::new_empty!(
16456 i64,
16457 fidl::encoding::DefaultFuchsiaResourceDialect
16458 ));
16459 }
16460 #[allow(irrefutable_let_patterns)]
16461 if let AllTypesXunion::Int64Member(ref mut val) = self {
16462 fidl::decode!(
16463 i64,
16464 fidl::encoding::DefaultFuchsiaResourceDialect,
16465 val,
16466 decoder,
16467 _inner_offset,
16468 depth
16469 )?;
16470 } else {
16471 unreachable!()
16472 }
16473 }
16474 6 => {
16475 #[allow(irrefutable_let_patterns)]
16476 if let AllTypesXunion::Uint8Member(_) = self {
16477 } else {
16479 *self = AllTypesXunion::Uint8Member(fidl::new_empty!(
16481 u8,
16482 fidl::encoding::DefaultFuchsiaResourceDialect
16483 ));
16484 }
16485 #[allow(irrefutable_let_patterns)]
16486 if let AllTypesXunion::Uint8Member(ref mut val) = self {
16487 fidl::decode!(
16488 u8,
16489 fidl::encoding::DefaultFuchsiaResourceDialect,
16490 val,
16491 decoder,
16492 _inner_offset,
16493 depth
16494 )?;
16495 } else {
16496 unreachable!()
16497 }
16498 }
16499 7 => {
16500 #[allow(irrefutable_let_patterns)]
16501 if let AllTypesXunion::Uint16Member(_) = self {
16502 } else {
16504 *self = AllTypesXunion::Uint16Member(fidl::new_empty!(
16506 u16,
16507 fidl::encoding::DefaultFuchsiaResourceDialect
16508 ));
16509 }
16510 #[allow(irrefutable_let_patterns)]
16511 if let AllTypesXunion::Uint16Member(ref mut val) = self {
16512 fidl::decode!(
16513 u16,
16514 fidl::encoding::DefaultFuchsiaResourceDialect,
16515 val,
16516 decoder,
16517 _inner_offset,
16518 depth
16519 )?;
16520 } else {
16521 unreachable!()
16522 }
16523 }
16524 8 => {
16525 #[allow(irrefutable_let_patterns)]
16526 if let AllTypesXunion::Uint32Member(_) = self {
16527 } else {
16529 *self = AllTypesXunion::Uint32Member(fidl::new_empty!(
16531 u32,
16532 fidl::encoding::DefaultFuchsiaResourceDialect
16533 ));
16534 }
16535 #[allow(irrefutable_let_patterns)]
16536 if let AllTypesXunion::Uint32Member(ref mut val) = self {
16537 fidl::decode!(
16538 u32,
16539 fidl::encoding::DefaultFuchsiaResourceDialect,
16540 val,
16541 decoder,
16542 _inner_offset,
16543 depth
16544 )?;
16545 } else {
16546 unreachable!()
16547 }
16548 }
16549 9 => {
16550 #[allow(irrefutable_let_patterns)]
16551 if let AllTypesXunion::Uint64Member(_) = self {
16552 } else {
16554 *self = AllTypesXunion::Uint64Member(fidl::new_empty!(
16556 u64,
16557 fidl::encoding::DefaultFuchsiaResourceDialect
16558 ));
16559 }
16560 #[allow(irrefutable_let_patterns)]
16561 if let AllTypesXunion::Uint64Member(ref mut val) = self {
16562 fidl::decode!(
16563 u64,
16564 fidl::encoding::DefaultFuchsiaResourceDialect,
16565 val,
16566 decoder,
16567 _inner_offset,
16568 depth
16569 )?;
16570 } else {
16571 unreachable!()
16572 }
16573 }
16574 10 => {
16575 #[allow(irrefutable_let_patterns)]
16576 if let AllTypesXunion::Float32Member(_) = self {
16577 } else {
16579 *self = AllTypesXunion::Float32Member(fidl::new_empty!(
16581 f32,
16582 fidl::encoding::DefaultFuchsiaResourceDialect
16583 ));
16584 }
16585 #[allow(irrefutable_let_patterns)]
16586 if let AllTypesXunion::Float32Member(ref mut val) = self {
16587 fidl::decode!(
16588 f32,
16589 fidl::encoding::DefaultFuchsiaResourceDialect,
16590 val,
16591 decoder,
16592 _inner_offset,
16593 depth
16594 )?;
16595 } else {
16596 unreachable!()
16597 }
16598 }
16599 11 => {
16600 #[allow(irrefutable_let_patterns)]
16601 if let AllTypesXunion::Float64Member(_) = self {
16602 } else {
16604 *self = AllTypesXunion::Float64Member(fidl::new_empty!(
16606 f64,
16607 fidl::encoding::DefaultFuchsiaResourceDialect
16608 ));
16609 }
16610 #[allow(irrefutable_let_patterns)]
16611 if let AllTypesXunion::Float64Member(ref mut val) = self {
16612 fidl::decode!(
16613 f64,
16614 fidl::encoding::DefaultFuchsiaResourceDialect,
16615 val,
16616 decoder,
16617 _inner_offset,
16618 depth
16619 )?;
16620 } else {
16621 unreachable!()
16622 }
16623 }
16624 12 => {
16625 #[allow(irrefutable_let_patterns)]
16626 if let AllTypesXunion::EnumMember(_) = self {
16627 } else {
16629 *self = AllTypesXunion::EnumMember(fidl::new_empty!(
16631 DefaultEnum,
16632 fidl::encoding::DefaultFuchsiaResourceDialect
16633 ));
16634 }
16635 #[allow(irrefutable_let_patterns)]
16636 if let AllTypesXunion::EnumMember(ref mut val) = self {
16637 fidl::decode!(
16638 DefaultEnum,
16639 fidl::encoding::DefaultFuchsiaResourceDialect,
16640 val,
16641 decoder,
16642 _inner_offset,
16643 depth
16644 )?;
16645 } else {
16646 unreachable!()
16647 }
16648 }
16649 13 => {
16650 #[allow(irrefutable_let_patterns)]
16651 if let AllTypesXunion::BitsMember(_) = self {
16652 } else {
16654 *self = AllTypesXunion::BitsMember(fidl::new_empty!(
16656 DefaultBits,
16657 fidl::encoding::DefaultFuchsiaResourceDialect
16658 ));
16659 }
16660 #[allow(irrefutable_let_patterns)]
16661 if let AllTypesXunion::BitsMember(ref mut val) = self {
16662 fidl::decode!(
16663 DefaultBits,
16664 fidl::encoding::DefaultFuchsiaResourceDialect,
16665 val,
16666 decoder,
16667 _inner_offset,
16668 depth
16669 )?;
16670 } else {
16671 unreachable!()
16672 }
16673 }
16674 14 => {
16675 #[allow(irrefutable_let_patterns)]
16676 if let AllTypesXunion::HandleMember(_) = self {
16677 } else {
16679 *self = AllTypesXunion::HandleMember(
16681 fidl::new_empty!(fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
16682 );
16683 }
16684 #[allow(irrefutable_let_patterns)]
16685 if let AllTypesXunion::HandleMember(ref mut val) = self {
16686 fidl::decode!(fidl::encoding::HandleType<fidl::Handle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, val, decoder, _inner_offset, depth)?;
16687 } else {
16688 unreachable!()
16689 }
16690 }
16691 15 => {
16692 #[allow(irrefutable_let_patterns)]
16693 if let AllTypesXunion::StringMember(_) = self {
16694 } else {
16696 *self = AllTypesXunion::StringMember(fidl::new_empty!(
16698 fidl::encoding::UnboundedString,
16699 fidl::encoding::DefaultFuchsiaResourceDialect
16700 ));
16701 }
16702 #[allow(irrefutable_let_patterns)]
16703 if let AllTypesXunion::StringMember(ref mut val) = self {
16704 fidl::decode!(
16705 fidl::encoding::UnboundedString,
16706 fidl::encoding::DefaultFuchsiaResourceDialect,
16707 val,
16708 decoder,
16709 _inner_offset,
16710 depth
16711 )?;
16712 } else {
16713 unreachable!()
16714 }
16715 }
16716 16 => {
16717 #[allow(irrefutable_let_patterns)]
16718 if let AllTypesXunion::StructMember(_) = self {
16719 } else {
16721 *self = AllTypesXunion::StructMember(fidl::new_empty!(
16723 ThisIsAStruct,
16724 fidl::encoding::DefaultFuchsiaResourceDialect
16725 ));
16726 }
16727 #[allow(irrefutable_let_patterns)]
16728 if let AllTypesXunion::StructMember(ref mut val) = self {
16729 fidl::decode!(
16730 ThisIsAStruct,
16731 fidl::encoding::DefaultFuchsiaResourceDialect,
16732 val,
16733 decoder,
16734 _inner_offset,
16735 depth
16736 )?;
16737 } else {
16738 unreachable!()
16739 }
16740 }
16741 17 => {
16742 #[allow(irrefutable_let_patterns)]
16743 if let AllTypesXunion::UnionMember(_) = self {
16744 } else {
16746 *self = AllTypesXunion::UnionMember(fidl::new_empty!(
16748 ThisIsAUnion,
16749 fidl::encoding::DefaultFuchsiaResourceDialect
16750 ));
16751 }
16752 #[allow(irrefutable_let_patterns)]
16753 if let AllTypesXunion::UnionMember(ref mut val) = self {
16754 fidl::decode!(
16755 ThisIsAUnion,
16756 fidl::encoding::DefaultFuchsiaResourceDialect,
16757 val,
16758 decoder,
16759 _inner_offset,
16760 depth
16761 )?;
16762 } else {
16763 unreachable!()
16764 }
16765 }
16766 18 => {
16767 #[allow(irrefutable_let_patterns)]
16768 if let AllTypesXunion::ArrayMember(_) = self {
16769 } else {
16771 *self = AllTypesXunion::ArrayMember(
16773 fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
16774 );
16775 }
16776 #[allow(irrefutable_let_patterns)]
16777 if let AllTypesXunion::ArrayMember(ref mut val) = self {
16778 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, val, decoder, _inner_offset, depth)?;
16779 } else {
16780 unreachable!()
16781 }
16782 }
16783 19 => {
16784 #[allow(irrefutable_let_patterns)]
16785 if let AllTypesXunion::VectorMember(_) = self {
16786 } else {
16788 *self = AllTypesXunion::VectorMember(fidl::new_empty!(
16790 fidl::encoding::UnboundedVector<u32>,
16791 fidl::encoding::DefaultFuchsiaResourceDialect
16792 ));
16793 }
16794 #[allow(irrefutable_let_patterns)]
16795 if let AllTypesXunion::VectorMember(ref mut val) = self {
16796 fidl::decode!(
16797 fidl::encoding::UnboundedVector<u32>,
16798 fidl::encoding::DefaultFuchsiaResourceDialect,
16799 val,
16800 decoder,
16801 _inner_offset,
16802 depth
16803 )?;
16804 } else {
16805 unreachable!()
16806 }
16807 }
16808 20 => {
16809 #[allow(irrefutable_let_patterns)]
16810 if let AllTypesXunion::TableMember(_) = self {
16811 } else {
16813 *self = AllTypesXunion::TableMember(fidl::new_empty!(
16815 ThisIsATable,
16816 fidl::encoding::DefaultFuchsiaResourceDialect
16817 ));
16818 }
16819 #[allow(irrefutable_let_patterns)]
16820 if let AllTypesXunion::TableMember(ref mut val) = self {
16821 fidl::decode!(
16822 ThisIsATable,
16823 fidl::encoding::DefaultFuchsiaResourceDialect,
16824 val,
16825 decoder,
16826 _inner_offset,
16827 depth
16828 )?;
16829 } else {
16830 unreachable!()
16831 }
16832 }
16833 21 => {
16834 #[allow(irrefutable_let_patterns)]
16835 if let AllTypesXunion::XunionMember(_) = self {
16836 } else {
16838 *self = AllTypesXunion::XunionMember(fidl::new_empty!(
16840 ThisIsAXunion,
16841 fidl::encoding::DefaultFuchsiaResourceDialect
16842 ));
16843 }
16844 #[allow(irrefutable_let_patterns)]
16845 if let AllTypesXunion::XunionMember(ref mut val) = self {
16846 fidl::decode!(
16847 ThisIsAXunion,
16848 fidl::encoding::DefaultFuchsiaResourceDialect,
16849 val,
16850 decoder,
16851 _inner_offset,
16852 depth
16853 )?;
16854 } else {
16855 unreachable!()
16856 }
16857 }
16858 #[allow(deprecated)]
16859 ordinal => {
16860 for _ in 0..num_handles {
16861 decoder.drop_next_handle()?;
16862 }
16863 *self = AllTypesXunion::__SourceBreaking { unknown_ordinal: ordinal };
16864 }
16865 }
16866 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize) {
16867 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16868 }
16869 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16870 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16871 }
16872 Ok(())
16873 }
16874 }
16875}