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::NullableHandle; 3],
30 pub nullable_handles: [Option<fidl::NullableHandle>; 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::NullableHandle>,
302 pub nullable_handles: Vec<Option<fidl::NullableHandle>>,
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::NullableHandle; 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::NullableHandle; 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::NullableHandle; 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::NullableHandle,
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::NullableHandle>,
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::NullableHandle>,
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::NullableHandle>>,
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::NullableHandle>,
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::NullableHandle>,
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::NullableHandle>>,
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::NullableHandle>>,
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::NullableHandle>>>,
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::NullableHandle>>,
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::NullableHandle>>,
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::NullableHandle>>>,
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::NullableHandle>,
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::NullableHandle),
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 Self { client: fidl::client::sync::Client::new(channel) }
711 }
712
713 pub fn into_channel(self) -> fidl::Channel {
714 self.client.into_channel()
715 }
716
717 pub fn wait_for_event(
720 &self,
721 deadline: zx::MonotonicInstant,
722 ) -> Result<ConfigEvent, fidl::Error> {
723 ConfigEvent::decode(self.client.wait_for_event::<ConfigMarker>(deadline)?)
724 }
725
726 pub fn r#get_impls(
727 &self,
728 ___deadline: zx::MonotonicInstant,
729 ) -> Result<Vec<String>, fidl::Error> {
730 let _response = self
731 .client
732 .send_query::<fidl::encoding::EmptyPayload, ConfigGetImplsResponse, ConfigMarker>(
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::NullableHandle {
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 { Some((responder)) } else { None }
993 }
994
995 pub fn method_name(&self) -> &'static str {
997 match *self {
998 ConfigRequest::GetImpls { .. } => "get_impls",
999 }
1000 }
1001}
1002
1003#[derive(Debug, Clone)]
1004pub struct ConfigControlHandle {
1005 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
1006}
1007
1008impl fidl::endpoints::ControlHandle for ConfigControlHandle {
1009 fn shutdown(&self) {
1010 self.inner.shutdown()
1011 }
1012
1013 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
1014 self.inner.shutdown_with_epitaph(status)
1015 }
1016
1017 fn is_closed(&self) -> bool {
1018 self.inner.channel().is_closed()
1019 }
1020 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
1021 self.inner.channel().on_closed()
1022 }
1023
1024 #[cfg(target_os = "fuchsia")]
1025 fn signal_peer(
1026 &self,
1027 clear_mask: zx::Signals,
1028 set_mask: zx::Signals,
1029 ) -> Result<(), zx_status::Status> {
1030 use fidl::Peered;
1031 self.inner.channel().signal_peer(clear_mask, set_mask)
1032 }
1033}
1034
1035impl ConfigControlHandle {}
1036
1037#[must_use = "FIDL methods require a response to be sent"]
1038#[derive(Debug)]
1039pub struct ConfigGetImplsResponder {
1040 control_handle: std::mem::ManuallyDrop<ConfigControlHandle>,
1041 tx_id: u32,
1042}
1043
1044impl std::ops::Drop for ConfigGetImplsResponder {
1048 fn drop(&mut self) {
1049 self.control_handle.shutdown();
1050 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
1052 }
1053}
1054
1055impl fidl::endpoints::Responder for ConfigGetImplsResponder {
1056 type ControlHandle = ConfigControlHandle;
1057
1058 fn control_handle(&self) -> &ConfigControlHandle {
1059 &self.control_handle
1060 }
1061
1062 fn drop_without_shutdown(mut self) {
1063 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
1065 std::mem::forget(self);
1067 }
1068}
1069
1070impl ConfigGetImplsResponder {
1071 pub fn send(self, mut impls: &[String]) -> Result<(), fidl::Error> {
1075 let _result = self.send_raw(impls);
1076 if _result.is_err() {
1077 self.control_handle.shutdown();
1078 }
1079 self.drop_without_shutdown();
1080 _result
1081 }
1082
1083 pub fn send_no_shutdown_on_err(self, mut impls: &[String]) -> Result<(), fidl::Error> {
1085 let _result = self.send_raw(impls);
1086 self.drop_without_shutdown();
1087 _result
1088 }
1089
1090 fn send_raw(&self, mut impls: &[String]) -> Result<(), fidl::Error> {
1091 self.control_handle.inner.send::<ConfigGetImplsResponse>(
1092 (impls,),
1093 self.tx_id,
1094 0x3b360c86a6dbdfe0,
1095 fidl::encoding::DynamicFlags::empty(),
1096 )
1097 }
1098}
1099
1100#[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
1101pub struct EchoMarker;
1102
1103impl fidl::endpoints::ProtocolMarker for EchoMarker {
1104 type Proxy = EchoProxy;
1105 type RequestStream = EchoRequestStream;
1106 #[cfg(target_os = "fuchsia")]
1107 type SynchronousProxy = EchoSynchronousProxy;
1108
1109 const DEBUG_NAME: &'static str = "fidl.test.compatibility.Echo";
1110}
1111impl fidl::endpoints::DiscoverableProtocolMarker for EchoMarker {}
1112pub type EchoEchoMinimalWithErrorResult = Result<(), u32>;
1113pub type EchoEchoStructWithErrorResult = Result<Struct, DefaultEnum>;
1114pub type EchoEchoArraysWithErrorResult = Result<ArraysStruct, DefaultEnum>;
1115pub type EchoEchoVectorsWithErrorResult = Result<VectorsStruct, DefaultEnum>;
1116pub type EchoEchoTableWithErrorResult = Result<AllTypesTable, DefaultEnum>;
1117pub type EchoEchoXunionsWithErrorResult = Result<Vec<AllTypesXunion>, DefaultEnum>;
1118pub type EchoEchoNamedStructWithErrorResult = Result<fidl_fidl_test_imported::SimpleStruct, u32>;
1119pub type EchoEchoTablePayloadWithErrorResult = Result<ResponseTable, DefaultEnum>;
1120pub type EchoEchoUnionPayloadWithErrorResult = Result<ResponseUnion, DefaultEnum>;
1121
1122pub trait EchoProxyInterface: Send + Sync {
1123 type EchoTableRequestComposedResponseFut: std::future::Future<Output = Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error>>
1124 + Send;
1125 fn r#echo_table_request_composed(
1126 &self,
1127 payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1128 ) -> Self::EchoTableRequestComposedResponseFut;
1129 type EchoUnionResponseWithErrorComposedResponseFut: std::future::Future<
1130 Output = Result<
1131 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1132 fidl::Error,
1133 >,
1134 > + Send;
1135 fn r#echo_union_response_with_error_composed(
1136 &self,
1137 value: i64,
1138 want_absolute_value: bool,
1139 forward_to_server: &str,
1140 result_err: u32,
1141 result_variant: fidl_fidl_test_imported::WantResponse,
1142 ) -> Self::EchoUnionResponseWithErrorComposedResponseFut;
1143 type EchoMinimalResponseFut: std::future::Future<Output = Result<(), fidl::Error>> + Send;
1144 fn r#echo_minimal(&self, forward_to_server: &str) -> Self::EchoMinimalResponseFut;
1145 type EchoMinimalWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoMinimalWithErrorResult, fidl::Error>>
1146 + Send;
1147 fn r#echo_minimal_with_error(
1148 &self,
1149 forward_to_server: &str,
1150 result_variant: RespondWith,
1151 ) -> Self::EchoMinimalWithErrorResponseFut;
1152 fn r#echo_minimal_no_ret_val(&self, forward_to_server: &str) -> Result<(), fidl::Error>;
1153 type EchoStructResponseFut: std::future::Future<Output = Result<Struct, fidl::Error>> + Send;
1154 fn r#echo_struct(&self, value: Struct, forward_to_server: &str) -> Self::EchoStructResponseFut;
1155 type EchoStructWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoStructWithErrorResult, fidl::Error>>
1156 + Send;
1157 fn r#echo_struct_with_error(
1158 &self,
1159 value: Struct,
1160 result_err: DefaultEnum,
1161 forward_to_server: &str,
1162 result_variant: RespondWith,
1163 ) -> Self::EchoStructWithErrorResponseFut;
1164 fn r#echo_struct_no_ret_val(
1165 &self,
1166 value: Struct,
1167 forward_to_server: &str,
1168 ) -> Result<(), fidl::Error>;
1169 type EchoArraysResponseFut: std::future::Future<Output = Result<ArraysStruct, fidl::Error>>
1170 + Send;
1171 fn r#echo_arrays(
1172 &self,
1173 value: ArraysStruct,
1174 forward_to_server: &str,
1175 ) -> Self::EchoArraysResponseFut;
1176 type EchoArraysWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoArraysWithErrorResult, fidl::Error>>
1177 + Send;
1178 fn r#echo_arrays_with_error(
1179 &self,
1180 value: ArraysStruct,
1181 result_err: DefaultEnum,
1182 forward_to_server: &str,
1183 result_variant: RespondWith,
1184 ) -> Self::EchoArraysWithErrorResponseFut;
1185 type EchoVectorsResponseFut: std::future::Future<Output = Result<VectorsStruct, fidl::Error>>
1186 + Send;
1187 fn r#echo_vectors(
1188 &self,
1189 value: VectorsStruct,
1190 forward_to_server: &str,
1191 ) -> Self::EchoVectorsResponseFut;
1192 type EchoVectorsWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoVectorsWithErrorResult, fidl::Error>>
1193 + Send;
1194 fn r#echo_vectors_with_error(
1195 &self,
1196 value: VectorsStruct,
1197 result_err: DefaultEnum,
1198 forward_to_server: &str,
1199 result_variant: RespondWith,
1200 ) -> Self::EchoVectorsWithErrorResponseFut;
1201 type EchoTableResponseFut: std::future::Future<Output = Result<AllTypesTable, fidl::Error>>
1202 + Send;
1203 fn r#echo_table(
1204 &self,
1205 value: AllTypesTable,
1206 forward_to_server: &str,
1207 ) -> Self::EchoTableResponseFut;
1208 type EchoTableWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoTableWithErrorResult, fidl::Error>>
1209 + Send;
1210 fn r#echo_table_with_error(
1211 &self,
1212 value: AllTypesTable,
1213 result_err: DefaultEnum,
1214 forward_to_server: &str,
1215 result_variant: RespondWith,
1216 ) -> Self::EchoTableWithErrorResponseFut;
1217 type EchoXunionsResponseFut: std::future::Future<Output = Result<Vec<AllTypesXunion>, fidl::Error>>
1218 + Send;
1219 fn r#echo_xunions(
1220 &self,
1221 value: Vec<AllTypesXunion>,
1222 forward_to_server: &str,
1223 ) -> Self::EchoXunionsResponseFut;
1224 type EchoXunionsWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoXunionsWithErrorResult, fidl::Error>>
1225 + Send;
1226 fn r#echo_xunions_with_error(
1227 &self,
1228 value: Vec<AllTypesXunion>,
1229 result_err: DefaultEnum,
1230 forward_to_server: &str,
1231 result_variant: RespondWith,
1232 ) -> Self::EchoXunionsWithErrorResponseFut;
1233 type EchoNamedStructResponseFut: std::future::Future<Output = Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error>>
1234 + Send;
1235 fn r#echo_named_struct(
1236 &self,
1237 value: &fidl_fidl_test_imported::SimpleStruct,
1238 forward_to_server: &str,
1239 ) -> Self::EchoNamedStructResponseFut;
1240 type EchoNamedStructWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoNamedStructWithErrorResult, fidl::Error>>
1241 + Send;
1242 fn r#echo_named_struct_with_error(
1243 &self,
1244 value: &fidl_fidl_test_imported::SimpleStruct,
1245 result_err: u32,
1246 forward_to_server: &str,
1247 result_variant: fidl_fidl_test_imported::WantResponse,
1248 ) -> Self::EchoNamedStructWithErrorResponseFut;
1249 fn r#echo_named_struct_no_ret_val(
1250 &self,
1251 value: &fidl_fidl_test_imported::SimpleStruct,
1252 forward_to_server: &str,
1253 ) -> Result<(), fidl::Error>;
1254 type EchoTablePayloadResponseFut: std::future::Future<Output = Result<ResponseTable, fidl::Error>>
1255 + Send;
1256 fn r#echo_table_payload(&self, payload: &RequestTable) -> Self::EchoTablePayloadResponseFut;
1257 type EchoTablePayloadWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoTablePayloadWithErrorResult, fidl::Error>>
1258 + Send;
1259 fn r#echo_table_payload_with_error(
1260 &self,
1261 payload: &EchoEchoTablePayloadWithErrorRequest,
1262 ) -> Self::EchoTablePayloadWithErrorResponseFut;
1263 fn r#echo_table_payload_no_ret_val(&self, payload: &RequestTable) -> Result<(), fidl::Error>;
1264 type EchoUnionPayloadResponseFut: std::future::Future<Output = Result<ResponseUnion, fidl::Error>>
1265 + Send;
1266 fn r#echo_union_payload(&self, payload: &RequestUnion) -> Self::EchoUnionPayloadResponseFut;
1267 type EchoUnionPayloadWithErrorResponseFut: std::future::Future<Output = Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error>>
1268 + Send;
1269 fn r#echo_union_payload_with_error(
1270 &self,
1271 payload: &EchoEchoUnionPayloadWithErrorRequest,
1272 ) -> Self::EchoUnionPayloadWithErrorResponseFut;
1273 fn r#echo_union_payload_no_ret_val(&self, payload: &RequestUnion) -> Result<(), fidl::Error>;
1274}
1275#[derive(Debug)]
1276#[cfg(target_os = "fuchsia")]
1277pub struct EchoSynchronousProxy {
1278 client: fidl::client::sync::Client,
1279}
1280
1281#[cfg(target_os = "fuchsia")]
1282impl fidl::endpoints::SynchronousProxy for EchoSynchronousProxy {
1283 type Proxy = EchoProxy;
1284 type Protocol = EchoMarker;
1285
1286 fn from_channel(inner: fidl::Channel) -> Self {
1287 Self::new(inner)
1288 }
1289
1290 fn into_channel(self) -> fidl::Channel {
1291 self.client.into_channel()
1292 }
1293
1294 fn as_channel(&self) -> &fidl::Channel {
1295 self.client.as_channel()
1296 }
1297}
1298
1299#[cfg(target_os = "fuchsia")]
1300impl EchoSynchronousProxy {
1301 pub fn new(channel: fidl::Channel) -> Self {
1302 Self { client: fidl::client::sync::Client::new(channel) }
1303 }
1304
1305 pub fn into_channel(self) -> fidl::Channel {
1306 self.client.into_channel()
1307 }
1308
1309 pub fn wait_for_event(&self, deadline: zx::MonotonicInstant) -> Result<EchoEvent, fidl::Error> {
1312 EchoEvent::decode(self.client.wait_for_event::<EchoMarker>(deadline)?)
1313 }
1314
1315 pub fn r#echo_table_request_composed(
1316 &self,
1317 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1318 ___deadline: zx::MonotonicInstant,
1319 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
1320 let _response = self.client.send_query::<
1321 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1322 fidl_fidl_test_imported::ResponseStruct,
1323 EchoMarker,
1324 >(
1325 payload,
1326 0x1d545c738c7a8ee,
1327 fidl::encoding::DynamicFlags::empty(),
1328 ___deadline,
1329 )?;
1330 Ok(_response.value)
1331 }
1332
1333 pub fn r#echo_union_response_with_error_composed(
1334 &self,
1335 mut value: i64,
1336 mut want_absolute_value: bool,
1337 mut forward_to_server: &str,
1338 mut result_err: u32,
1339 mut result_variant: fidl_fidl_test_imported::WantResponse,
1340 ___deadline: zx::MonotonicInstant,
1341 ) -> Result<
1342 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1343 fidl::Error,
1344 > {
1345 let _response = self.client.send_query::<
1346 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest,
1347 fidl::encoding::ResultType<fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse, u32>,
1348 EchoMarker,
1349 >(
1350 (value, want_absolute_value, forward_to_server, result_err, result_variant,),
1351 0x38a67e88d6106443,
1352 fidl::encoding::DynamicFlags::empty(),
1353 ___deadline,
1354 )?;
1355 Ok(_response.map(|x| x))
1356 }
1357
1358 pub fn r#echo_minimal(
1359 &self,
1360 mut forward_to_server: &str,
1361 ___deadline: zx::MonotonicInstant,
1362 ) -> Result<(), fidl::Error> {
1363 let _response = self
1364 .client
1365 .send_query::<EchoEchoMinimalRequest, fidl::encoding::EmptyPayload, EchoMarker>(
1366 (forward_to_server,),
1367 0x39edd68c837482ec,
1368 fidl::encoding::DynamicFlags::empty(),
1369 ___deadline,
1370 )?;
1371 Ok(_response)
1372 }
1373
1374 pub fn r#echo_minimal_with_error(
1375 &self,
1376 mut forward_to_server: &str,
1377 mut result_variant: RespondWith,
1378 ___deadline: zx::MonotonicInstant,
1379 ) -> Result<EchoEchoMinimalWithErrorResult, fidl::Error> {
1380 let _response = self.client.send_query::<
1381 EchoEchoMinimalWithErrorRequest,
1382 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>,
1383 EchoMarker,
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 =
1411 self.client.send_query::<EchoEchoStructRequest, EchoEchoStructResponse, EchoMarker>(
1412 (&mut value, forward_to_server),
1413 0x4c2f85818cc53f37,
1414 fidl::encoding::DynamicFlags::empty(),
1415 ___deadline,
1416 )?;
1417 Ok(_response.value)
1418 }
1419
1420 pub fn r#echo_struct_with_error(
1421 &self,
1422 mut value: Struct,
1423 mut result_err: DefaultEnum,
1424 mut forward_to_server: &str,
1425 mut result_variant: RespondWith,
1426 ___deadline: zx::MonotonicInstant,
1427 ) -> Result<EchoEchoStructWithErrorResult, fidl::Error> {
1428 let _response = self.client.send_query::<
1429 EchoEchoStructWithErrorRequest,
1430 fidl::encoding::ResultType<EchoEchoStructWithErrorResponse, DefaultEnum>,
1431 EchoMarker,
1432 >(
1433 (&mut value, result_err, forward_to_server, result_variant,),
1434 0x46cb32652c4c0899,
1435 fidl::encoding::DynamicFlags::empty(),
1436 ___deadline,
1437 )?;
1438 Ok(_response.map(|x| x.value))
1439 }
1440
1441 pub fn r#echo_struct_no_ret_val(
1442 &self,
1443 mut value: Struct,
1444 mut forward_to_server: &str,
1445 ) -> Result<(), fidl::Error> {
1446 self.client.send::<EchoEchoStructNoRetValRequest>(
1447 (&mut value, forward_to_server),
1448 0x1f763e602cf5892a,
1449 fidl::encoding::DynamicFlags::empty(),
1450 )
1451 }
1452
1453 pub fn r#echo_arrays(
1454 &self,
1455 mut value: ArraysStruct,
1456 mut forward_to_server: &str,
1457 ___deadline: zx::MonotonicInstant,
1458 ) -> Result<ArraysStruct, fidl::Error> {
1459 let _response =
1460 self.client.send_query::<EchoEchoArraysRequest, EchoEchoArraysResponse, EchoMarker>(
1461 (&mut value, forward_to_server),
1462 0x1b6019d5611f2470,
1463 fidl::encoding::DynamicFlags::empty(),
1464 ___deadline,
1465 )?;
1466 Ok(_response.value)
1467 }
1468
1469 pub fn r#echo_arrays_with_error(
1470 &self,
1471 mut value: ArraysStruct,
1472 mut result_err: DefaultEnum,
1473 mut forward_to_server: &str,
1474 mut result_variant: RespondWith,
1475 ___deadline: zx::MonotonicInstant,
1476 ) -> Result<EchoEchoArraysWithErrorResult, fidl::Error> {
1477 let _response = self.client.send_query::<
1478 EchoEchoArraysWithErrorRequest,
1479 fidl::encoding::ResultType<EchoEchoArraysWithErrorResponse, DefaultEnum>,
1480 EchoMarker,
1481 >(
1482 (&mut value, result_err, forward_to_server, result_variant,),
1483 0x6dbf26e67e253afa,
1484 fidl::encoding::DynamicFlags::empty(),
1485 ___deadline,
1486 )?;
1487 Ok(_response.map(|x| x.value))
1488 }
1489
1490 pub fn r#echo_vectors(
1491 &self,
1492 mut value: VectorsStruct,
1493 mut forward_to_server: &str,
1494 ___deadline: zx::MonotonicInstant,
1495 ) -> Result<VectorsStruct, fidl::Error> {
1496 let _response =
1497 self.client.send_query::<EchoEchoVectorsRequest, EchoEchoVectorsResponse, EchoMarker>(
1498 (&mut value, forward_to_server),
1499 0x1582623f0d9f6e5e,
1500 fidl::encoding::DynamicFlags::empty(),
1501 ___deadline,
1502 )?;
1503 Ok(_response.value)
1504 }
1505
1506 pub fn r#echo_vectors_with_error(
1507 &self,
1508 mut value: VectorsStruct,
1509 mut result_err: DefaultEnum,
1510 mut forward_to_server: &str,
1511 mut result_variant: RespondWith,
1512 ___deadline: zx::MonotonicInstant,
1513 ) -> Result<EchoEchoVectorsWithErrorResult, fidl::Error> {
1514 let _response = self.client.send_query::<
1515 EchoEchoVectorsWithErrorRequest,
1516 fidl::encoding::ResultType<EchoEchoVectorsWithErrorResponse, DefaultEnum>,
1517 EchoMarker,
1518 >(
1519 (&mut value, result_err, forward_to_server, result_variant,),
1520 0x730f163401e2b3e5,
1521 fidl::encoding::DynamicFlags::empty(),
1522 ___deadline,
1523 )?;
1524 Ok(_response.map(|x| x.value))
1525 }
1526
1527 pub fn r#echo_table(
1528 &self,
1529 mut value: AllTypesTable,
1530 mut forward_to_server: &str,
1531 ___deadline: zx::MonotonicInstant,
1532 ) -> Result<AllTypesTable, fidl::Error> {
1533 let _response =
1534 self.client.send_query::<EchoEchoTableRequest, EchoEchoTableResponse, EchoMarker>(
1535 (&mut value, forward_to_server),
1536 0x4f1fb0a512f47c4b,
1537 fidl::encoding::DynamicFlags::empty(),
1538 ___deadline,
1539 )?;
1540 Ok(_response.value)
1541 }
1542
1543 pub fn r#echo_table_with_error(
1544 &self,
1545 mut value: AllTypesTable,
1546 mut result_err: DefaultEnum,
1547 mut forward_to_server: &str,
1548 mut result_variant: RespondWith,
1549 ___deadline: zx::MonotonicInstant,
1550 ) -> Result<EchoEchoTableWithErrorResult, fidl::Error> {
1551 let _response = self.client.send_query::<
1552 EchoEchoTableWithErrorRequest,
1553 fidl::encoding::ResultType<EchoEchoTableWithErrorResponse, DefaultEnum>,
1554 EchoMarker,
1555 >(
1556 (&mut value, result_err, forward_to_server, result_variant,),
1557 0x44e835cb1eb9a931,
1558 fidl::encoding::DynamicFlags::empty(),
1559 ___deadline,
1560 )?;
1561 Ok(_response.map(|x| x.value))
1562 }
1563
1564 pub fn r#echo_xunions(
1565 &self,
1566 mut value: Vec<AllTypesXunion>,
1567 mut forward_to_server: &str,
1568 ___deadline: zx::MonotonicInstant,
1569 ) -> Result<Vec<AllTypesXunion>, fidl::Error> {
1570 let _response =
1571 self.client.send_query::<EchoEchoXunionsRequest, EchoEchoXunionsResponse, EchoMarker>(
1572 (value.as_mut(), forward_to_server),
1573 0x3dc181909041a583,
1574 fidl::encoding::DynamicFlags::empty(),
1575 ___deadline,
1576 )?;
1577 Ok(_response.value)
1578 }
1579
1580 pub fn r#echo_xunions_with_error(
1581 &self,
1582 mut value: Vec<AllTypesXunion>,
1583 mut result_err: DefaultEnum,
1584 mut forward_to_server: &str,
1585 mut result_variant: RespondWith,
1586 ___deadline: zx::MonotonicInstant,
1587 ) -> Result<EchoEchoXunionsWithErrorResult, fidl::Error> {
1588 let _response = self.client.send_query::<
1589 EchoEchoXunionsWithErrorRequest,
1590 fidl::encoding::ResultType<EchoEchoXunionsWithErrorResponse, DefaultEnum>,
1591 EchoMarker,
1592 >(
1593 (value.as_mut(), result_err, forward_to_server, result_variant,),
1594 0x75184102667fa766,
1595 fidl::encoding::DynamicFlags::empty(),
1596 ___deadline,
1597 )?;
1598 Ok(_response.map(|x| x.value))
1599 }
1600
1601 pub fn r#echo_named_struct(
1602 &self,
1603 mut value: &fidl_fidl_test_imported::SimpleStruct,
1604 mut forward_to_server: &str,
1605 ___deadline: zx::MonotonicInstant,
1606 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
1607 let _response = self.client.send_query::<
1608 fidl_fidl_test_imported::RequestStruct,
1609 fidl_fidl_test_imported::ResponseStruct,
1610 EchoMarker,
1611 >(
1612 (value, forward_to_server,),
1613 0xf2d4aa9e65f7111,
1614 fidl::encoding::DynamicFlags::empty(),
1615 ___deadline,
1616 )?;
1617 Ok(_response.value)
1618 }
1619
1620 pub fn r#echo_named_struct_with_error(
1621 &self,
1622 mut value: &fidl_fidl_test_imported::SimpleStruct,
1623 mut result_err: u32,
1624 mut forward_to_server: &str,
1625 mut result_variant: fidl_fidl_test_imported::WantResponse,
1626 ___deadline: zx::MonotonicInstant,
1627 ) -> Result<EchoEchoNamedStructWithErrorResult, fidl::Error> {
1628 let _response = self.client.send_query::<
1629 fidl_fidl_test_imported::ErrorableRequestStruct,
1630 fidl::encoding::ResultType<fidl_fidl_test_imported::ResponseStruct, u32>,
1631 EchoMarker,
1632 >(
1633 (value, result_err, forward_to_server, result_variant,),
1634 0x5766fee9e74442e8,
1635 fidl::encoding::DynamicFlags::empty(),
1636 ___deadline,
1637 )?;
1638 Ok(_response.map(|x| x.value))
1639 }
1640
1641 pub fn r#echo_named_struct_no_ret_val(
1642 &self,
1643 mut value: &fidl_fidl_test_imported::SimpleStruct,
1644 mut forward_to_server: &str,
1645 ) -> Result<(), fidl::Error> {
1646 self.client.send::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(
1647 (value, forward_to_server),
1648 0x3a50bbf7d2113ad7,
1649 fidl::encoding::DynamicFlags::empty(),
1650 )
1651 }
1652
1653 pub fn r#echo_table_payload(
1654 &self,
1655 mut payload: &RequestTable,
1656 ___deadline: zx::MonotonicInstant,
1657 ) -> Result<ResponseTable, fidl::Error> {
1658 let _response = self.client.send_query::<RequestTable, ResponseTable, EchoMarker>(
1659 payload,
1660 0x641d98087378c003,
1661 fidl::encoding::DynamicFlags::empty(),
1662 ___deadline,
1663 )?;
1664 Ok(_response)
1665 }
1666
1667 pub fn r#echo_table_payload_with_error(
1668 &self,
1669 mut payload: &EchoEchoTablePayloadWithErrorRequest,
1670 ___deadline: zx::MonotonicInstant,
1671 ) -> Result<EchoEchoTablePayloadWithErrorResult, fidl::Error> {
1672 let _response = self.client.send_query::<
1673 EchoEchoTablePayloadWithErrorRequest,
1674 fidl::encoding::ResultType<ResponseTable, DefaultEnum>,
1675 EchoMarker,
1676 >(
1677 payload,
1678 0x636ed243761ab66d,
1679 fidl::encoding::DynamicFlags::empty(),
1680 ___deadline,
1681 )?;
1682 Ok(_response.map(|x| x))
1683 }
1684
1685 pub fn r#echo_table_payload_no_ret_val(
1686 &self,
1687 mut payload: &RequestTable,
1688 ) -> Result<(), fidl::Error> {
1689 self.client.send::<RequestTable>(
1690 payload,
1691 0x32961f7d718569f8,
1692 fidl::encoding::DynamicFlags::empty(),
1693 )
1694 }
1695
1696 pub fn r#echo_union_payload(
1697 &self,
1698 mut payload: &RequestUnion,
1699 ___deadline: zx::MonotonicInstant,
1700 ) -> Result<ResponseUnion, fidl::Error> {
1701 let _response = self.client.send_query::<RequestUnion, ResponseUnion, EchoMarker>(
1702 payload,
1703 0x66def9e793f10c55,
1704 fidl::encoding::DynamicFlags::empty(),
1705 ___deadline,
1706 )?;
1707 Ok(_response)
1708 }
1709
1710 pub fn r#echo_union_payload_with_error(
1711 &self,
1712 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
1713 ___deadline: zx::MonotonicInstant,
1714 ) -> Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error> {
1715 let _response = self.client.send_query::<
1716 EchoEchoUnionPayloadWithErrorRequest,
1717 fidl::encoding::ResultType<ResponseUnion, DefaultEnum>,
1718 EchoMarker,
1719 >(
1720 payload,
1721 0x1be890d6e68ef063,
1722 fidl::encoding::DynamicFlags::empty(),
1723 ___deadline,
1724 )?;
1725 Ok(_response.map(|x| x))
1726 }
1727
1728 pub fn r#echo_union_payload_no_ret_val(
1729 &self,
1730 mut payload: &RequestUnion,
1731 ) -> Result<(), fidl::Error> {
1732 self.client.send::<RequestUnion>(
1733 payload,
1734 0x11518bf346430040,
1735 fidl::encoding::DynamicFlags::empty(),
1736 )
1737 }
1738}
1739
1740#[cfg(target_os = "fuchsia")]
1741impl From<EchoSynchronousProxy> for zx::NullableHandle {
1742 fn from(value: EchoSynchronousProxy) -> Self {
1743 value.into_channel().into()
1744 }
1745}
1746
1747#[cfg(target_os = "fuchsia")]
1748impl From<fidl::Channel> for EchoSynchronousProxy {
1749 fn from(value: fidl::Channel) -> Self {
1750 Self::new(value)
1751 }
1752}
1753
1754#[cfg(target_os = "fuchsia")]
1755impl fidl::endpoints::FromClient for EchoSynchronousProxy {
1756 type Protocol = EchoMarker;
1757
1758 fn from_client(value: fidl::endpoints::ClientEnd<EchoMarker>) -> Self {
1759 Self::new(value.into_channel())
1760 }
1761}
1762
1763#[derive(Debug, Clone)]
1764pub struct EchoProxy {
1765 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
1766}
1767
1768impl fidl::endpoints::Proxy for EchoProxy {
1769 type Protocol = EchoMarker;
1770
1771 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
1772 Self::new(inner)
1773 }
1774
1775 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
1776 self.client.into_channel().map_err(|client| Self { client })
1777 }
1778
1779 fn as_channel(&self) -> &::fidl::AsyncChannel {
1780 self.client.as_channel()
1781 }
1782}
1783
1784impl EchoProxy {
1785 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
1787 let protocol_name = <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1788 Self { client: fidl::client::Client::new(channel, protocol_name) }
1789 }
1790
1791 pub fn take_event_stream(&self) -> EchoEventStream {
1797 EchoEventStream { event_receiver: self.client.take_event_receiver() }
1798 }
1799
1800 pub fn r#echo_table_request_composed(
1801 &self,
1802 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1803 ) -> fidl::client::QueryResponseFut<
1804 fidl_fidl_test_imported::SimpleStruct,
1805 fidl::encoding::DefaultFuchsiaResourceDialect,
1806 > {
1807 EchoProxyInterface::r#echo_table_request_composed(self, payload)
1808 }
1809
1810 pub fn r#echo_union_response_with_error_composed(
1811 &self,
1812 mut value: i64,
1813 mut want_absolute_value: bool,
1814 mut forward_to_server: &str,
1815 mut result_err: u32,
1816 mut result_variant: fidl_fidl_test_imported::WantResponse,
1817 ) -> fidl::client::QueryResponseFut<
1818 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1819 fidl::encoding::DefaultFuchsiaResourceDialect,
1820 > {
1821 EchoProxyInterface::r#echo_union_response_with_error_composed(
1822 self,
1823 value,
1824 want_absolute_value,
1825 forward_to_server,
1826 result_err,
1827 result_variant,
1828 )
1829 }
1830
1831 pub fn r#echo_minimal(
1832 &self,
1833 mut forward_to_server: &str,
1834 ) -> fidl::client::QueryResponseFut<(), fidl::encoding::DefaultFuchsiaResourceDialect> {
1835 EchoProxyInterface::r#echo_minimal(self, forward_to_server)
1836 }
1837
1838 pub fn r#echo_minimal_with_error(
1839 &self,
1840 mut forward_to_server: &str,
1841 mut result_variant: RespondWith,
1842 ) -> fidl::client::QueryResponseFut<
1843 EchoEchoMinimalWithErrorResult,
1844 fidl::encoding::DefaultFuchsiaResourceDialect,
1845 > {
1846 EchoProxyInterface::r#echo_minimal_with_error(self, forward_to_server, result_variant)
1847 }
1848
1849 pub fn r#echo_minimal_no_ret_val(
1850 &self,
1851 mut forward_to_server: &str,
1852 ) -> Result<(), fidl::Error> {
1853 EchoProxyInterface::r#echo_minimal_no_ret_val(self, forward_to_server)
1854 }
1855
1856 pub fn r#echo_struct(
1857 &self,
1858 mut value: Struct,
1859 mut forward_to_server: &str,
1860 ) -> fidl::client::QueryResponseFut<Struct, fidl::encoding::DefaultFuchsiaResourceDialect> {
1861 EchoProxyInterface::r#echo_struct(self, value, forward_to_server)
1862 }
1863
1864 pub fn r#echo_struct_with_error(
1865 &self,
1866 mut value: Struct,
1867 mut result_err: DefaultEnum,
1868 mut forward_to_server: &str,
1869 mut result_variant: RespondWith,
1870 ) -> fidl::client::QueryResponseFut<
1871 EchoEchoStructWithErrorResult,
1872 fidl::encoding::DefaultFuchsiaResourceDialect,
1873 > {
1874 EchoProxyInterface::r#echo_struct_with_error(
1875 self,
1876 value,
1877 result_err,
1878 forward_to_server,
1879 result_variant,
1880 )
1881 }
1882
1883 pub fn r#echo_struct_no_ret_val(
1884 &self,
1885 mut value: Struct,
1886 mut forward_to_server: &str,
1887 ) -> Result<(), fidl::Error> {
1888 EchoProxyInterface::r#echo_struct_no_ret_val(self, value, forward_to_server)
1889 }
1890
1891 pub fn r#echo_arrays(
1892 &self,
1893 mut value: ArraysStruct,
1894 mut forward_to_server: &str,
1895 ) -> fidl::client::QueryResponseFut<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
1896 {
1897 EchoProxyInterface::r#echo_arrays(self, value, forward_to_server)
1898 }
1899
1900 pub fn r#echo_arrays_with_error(
1901 &self,
1902 mut value: ArraysStruct,
1903 mut result_err: DefaultEnum,
1904 mut forward_to_server: &str,
1905 mut result_variant: RespondWith,
1906 ) -> fidl::client::QueryResponseFut<
1907 EchoEchoArraysWithErrorResult,
1908 fidl::encoding::DefaultFuchsiaResourceDialect,
1909 > {
1910 EchoProxyInterface::r#echo_arrays_with_error(
1911 self,
1912 value,
1913 result_err,
1914 forward_to_server,
1915 result_variant,
1916 )
1917 }
1918
1919 pub fn r#echo_vectors(
1920 &self,
1921 mut value: VectorsStruct,
1922 mut forward_to_server: &str,
1923 ) -> fidl::client::QueryResponseFut<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
1924 {
1925 EchoProxyInterface::r#echo_vectors(self, value, forward_to_server)
1926 }
1927
1928 pub fn r#echo_vectors_with_error(
1929 &self,
1930 mut value: VectorsStruct,
1931 mut result_err: DefaultEnum,
1932 mut forward_to_server: &str,
1933 mut result_variant: RespondWith,
1934 ) -> fidl::client::QueryResponseFut<
1935 EchoEchoVectorsWithErrorResult,
1936 fidl::encoding::DefaultFuchsiaResourceDialect,
1937 > {
1938 EchoProxyInterface::r#echo_vectors_with_error(
1939 self,
1940 value,
1941 result_err,
1942 forward_to_server,
1943 result_variant,
1944 )
1945 }
1946
1947 pub fn r#echo_table(
1948 &self,
1949 mut value: AllTypesTable,
1950 mut forward_to_server: &str,
1951 ) -> fidl::client::QueryResponseFut<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>
1952 {
1953 EchoProxyInterface::r#echo_table(self, value, forward_to_server)
1954 }
1955
1956 pub fn r#echo_table_with_error(
1957 &self,
1958 mut value: AllTypesTable,
1959 mut result_err: DefaultEnum,
1960 mut forward_to_server: &str,
1961 mut result_variant: RespondWith,
1962 ) -> fidl::client::QueryResponseFut<
1963 EchoEchoTableWithErrorResult,
1964 fidl::encoding::DefaultFuchsiaResourceDialect,
1965 > {
1966 EchoProxyInterface::r#echo_table_with_error(
1967 self,
1968 value,
1969 result_err,
1970 forward_to_server,
1971 result_variant,
1972 )
1973 }
1974
1975 pub fn r#echo_xunions(
1976 &self,
1977 mut value: Vec<AllTypesXunion>,
1978 mut forward_to_server: &str,
1979 ) -> fidl::client::QueryResponseFut<
1980 Vec<AllTypesXunion>,
1981 fidl::encoding::DefaultFuchsiaResourceDialect,
1982 > {
1983 EchoProxyInterface::r#echo_xunions(self, value, forward_to_server)
1984 }
1985
1986 pub fn r#echo_xunions_with_error(
1987 &self,
1988 mut value: Vec<AllTypesXunion>,
1989 mut result_err: DefaultEnum,
1990 mut forward_to_server: &str,
1991 mut result_variant: RespondWith,
1992 ) -> fidl::client::QueryResponseFut<
1993 EchoEchoXunionsWithErrorResult,
1994 fidl::encoding::DefaultFuchsiaResourceDialect,
1995 > {
1996 EchoProxyInterface::r#echo_xunions_with_error(
1997 self,
1998 value,
1999 result_err,
2000 forward_to_server,
2001 result_variant,
2002 )
2003 }
2004
2005 pub fn r#echo_named_struct(
2006 &self,
2007 mut value: &fidl_fidl_test_imported::SimpleStruct,
2008 mut forward_to_server: &str,
2009 ) -> fidl::client::QueryResponseFut<
2010 fidl_fidl_test_imported::SimpleStruct,
2011 fidl::encoding::DefaultFuchsiaResourceDialect,
2012 > {
2013 EchoProxyInterface::r#echo_named_struct(self, value, forward_to_server)
2014 }
2015
2016 pub fn r#echo_named_struct_with_error(
2017 &self,
2018 mut value: &fidl_fidl_test_imported::SimpleStruct,
2019 mut result_err: u32,
2020 mut forward_to_server: &str,
2021 mut result_variant: fidl_fidl_test_imported::WantResponse,
2022 ) -> fidl::client::QueryResponseFut<
2023 EchoEchoNamedStructWithErrorResult,
2024 fidl::encoding::DefaultFuchsiaResourceDialect,
2025 > {
2026 EchoProxyInterface::r#echo_named_struct_with_error(
2027 self,
2028 value,
2029 result_err,
2030 forward_to_server,
2031 result_variant,
2032 )
2033 }
2034
2035 pub fn r#echo_named_struct_no_ret_val(
2036 &self,
2037 mut value: &fidl_fidl_test_imported::SimpleStruct,
2038 mut forward_to_server: &str,
2039 ) -> Result<(), fidl::Error> {
2040 EchoProxyInterface::r#echo_named_struct_no_ret_val(self, value, forward_to_server)
2041 }
2042
2043 pub fn r#echo_table_payload(
2044 &self,
2045 mut payload: &RequestTable,
2046 ) -> fidl::client::QueryResponseFut<ResponseTable, fidl::encoding::DefaultFuchsiaResourceDialect>
2047 {
2048 EchoProxyInterface::r#echo_table_payload(self, payload)
2049 }
2050
2051 pub fn r#echo_table_payload_with_error(
2052 &self,
2053 mut payload: &EchoEchoTablePayloadWithErrorRequest,
2054 ) -> fidl::client::QueryResponseFut<
2055 EchoEchoTablePayloadWithErrorResult,
2056 fidl::encoding::DefaultFuchsiaResourceDialect,
2057 > {
2058 EchoProxyInterface::r#echo_table_payload_with_error(self, payload)
2059 }
2060
2061 pub fn r#echo_table_payload_no_ret_val(
2062 &self,
2063 mut payload: &RequestTable,
2064 ) -> Result<(), fidl::Error> {
2065 EchoProxyInterface::r#echo_table_payload_no_ret_val(self, payload)
2066 }
2067
2068 pub fn r#echo_union_payload(
2069 &self,
2070 mut payload: &RequestUnion,
2071 ) -> fidl::client::QueryResponseFut<ResponseUnion, fidl::encoding::DefaultFuchsiaResourceDialect>
2072 {
2073 EchoProxyInterface::r#echo_union_payload(self, payload)
2074 }
2075
2076 pub fn r#echo_union_payload_with_error(
2077 &self,
2078 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
2079 ) -> fidl::client::QueryResponseFut<
2080 EchoEchoUnionPayloadWithErrorResult,
2081 fidl::encoding::DefaultFuchsiaResourceDialect,
2082 > {
2083 EchoProxyInterface::r#echo_union_payload_with_error(self, payload)
2084 }
2085
2086 pub fn r#echo_union_payload_no_ret_val(
2087 &self,
2088 mut payload: &RequestUnion,
2089 ) -> Result<(), fidl::Error> {
2090 EchoProxyInterface::r#echo_union_payload_no_ret_val(self, payload)
2091 }
2092}
2093
2094impl EchoProxyInterface for EchoProxy {
2095 type EchoTableRequestComposedResponseFut = fidl::client::QueryResponseFut<
2096 fidl_fidl_test_imported::SimpleStruct,
2097 fidl::encoding::DefaultFuchsiaResourceDialect,
2098 >;
2099 fn r#echo_table_request_composed(
2100 &self,
2101 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2102 ) -> Self::EchoTableRequestComposedResponseFut {
2103 fn _decode(
2104 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2105 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
2106 let _response = fidl::client::decode_transaction_body::<
2107 fidl_fidl_test_imported::ResponseStruct,
2108 fidl::encoding::DefaultFuchsiaResourceDialect,
2109 0x1d545c738c7a8ee,
2110 >(_buf?)?;
2111 Ok(_response.value)
2112 }
2113 self.client.send_query_and_decode::<
2114 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2115 fidl_fidl_test_imported::SimpleStruct,
2116 >(
2117 payload,
2118 0x1d545c738c7a8ee,
2119 fidl::encoding::DynamicFlags::empty(),
2120 _decode,
2121 )
2122 }
2123
2124 type EchoUnionResponseWithErrorComposedResponseFut = fidl::client::QueryResponseFut<
2125 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2126 fidl::encoding::DefaultFuchsiaResourceDialect,
2127 >;
2128 fn r#echo_union_response_with_error_composed(
2129 &self,
2130 mut value: i64,
2131 mut want_absolute_value: bool,
2132 mut forward_to_server: &str,
2133 mut result_err: u32,
2134 mut result_variant: fidl_fidl_test_imported::WantResponse,
2135 ) -> Self::EchoUnionResponseWithErrorComposedResponseFut {
2136 fn _decode(
2137 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2138 ) -> Result<
2139 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2140 fidl::Error,
2141 > {
2142 let _response = fidl::client::decode_transaction_body::<
2143 fidl::encoding::ResultType<
2144 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
2145 u32,
2146 >,
2147 fidl::encoding::DefaultFuchsiaResourceDialect,
2148 0x38a67e88d6106443,
2149 >(_buf?)?;
2150 Ok(_response.map(|x| x))
2151 }
2152 self.client.send_query_and_decode::<
2153 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest,
2154 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2155 >(
2156 (value, want_absolute_value, forward_to_server, result_err, result_variant,),
2157 0x38a67e88d6106443,
2158 fidl::encoding::DynamicFlags::empty(),
2159 _decode,
2160 )
2161 }
2162
2163 type EchoMinimalResponseFut =
2164 fidl::client::QueryResponseFut<(), fidl::encoding::DefaultFuchsiaResourceDialect>;
2165 fn r#echo_minimal(&self, mut forward_to_server: &str) -> Self::EchoMinimalResponseFut {
2166 fn _decode(
2167 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2168 ) -> Result<(), fidl::Error> {
2169 let _response = fidl::client::decode_transaction_body::<
2170 fidl::encoding::EmptyPayload,
2171 fidl::encoding::DefaultFuchsiaResourceDialect,
2172 0x39edd68c837482ec,
2173 >(_buf?)?;
2174 Ok(_response)
2175 }
2176 self.client.send_query_and_decode::<EchoEchoMinimalRequest, ()>(
2177 (forward_to_server,),
2178 0x39edd68c837482ec,
2179 fidl::encoding::DynamicFlags::empty(),
2180 _decode,
2181 )
2182 }
2183
2184 type EchoMinimalWithErrorResponseFut = fidl::client::QueryResponseFut<
2185 EchoEchoMinimalWithErrorResult,
2186 fidl::encoding::DefaultFuchsiaResourceDialect,
2187 >;
2188 fn r#echo_minimal_with_error(
2189 &self,
2190 mut forward_to_server: &str,
2191 mut result_variant: RespondWith,
2192 ) -> Self::EchoMinimalWithErrorResponseFut {
2193 fn _decode(
2194 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2195 ) -> Result<EchoEchoMinimalWithErrorResult, fidl::Error> {
2196 let _response = fidl::client::decode_transaction_body::<
2197 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>,
2198 fidl::encoding::DefaultFuchsiaResourceDialect,
2199 0x36f4695996e35acc,
2200 >(_buf?)?;
2201 Ok(_response.map(|x| x))
2202 }
2203 self.client.send_query_and_decode::<
2204 EchoEchoMinimalWithErrorRequest,
2205 EchoEchoMinimalWithErrorResult,
2206 >(
2207 (forward_to_server, result_variant,),
2208 0x36f4695996e35acc,
2209 fidl::encoding::DynamicFlags::empty(),
2210 _decode,
2211 )
2212 }
2213
2214 fn r#echo_minimal_no_ret_val(&self, mut forward_to_server: &str) -> Result<(), fidl::Error> {
2215 self.client.send::<EchoEchoMinimalNoRetValRequest>(
2216 (forward_to_server,),
2217 0x42693c143e2c3694,
2218 fidl::encoding::DynamicFlags::empty(),
2219 )
2220 }
2221
2222 type EchoStructResponseFut =
2223 fidl::client::QueryResponseFut<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>;
2224 fn r#echo_struct(
2225 &self,
2226 mut value: Struct,
2227 mut forward_to_server: &str,
2228 ) -> Self::EchoStructResponseFut {
2229 fn _decode(
2230 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2231 ) -> Result<Struct, fidl::Error> {
2232 let _response = fidl::client::decode_transaction_body::<
2233 EchoEchoStructResponse,
2234 fidl::encoding::DefaultFuchsiaResourceDialect,
2235 0x4c2f85818cc53f37,
2236 >(_buf?)?;
2237 Ok(_response.value)
2238 }
2239 self.client.send_query_and_decode::<EchoEchoStructRequest, Struct>(
2240 (&mut value, forward_to_server),
2241 0x4c2f85818cc53f37,
2242 fidl::encoding::DynamicFlags::empty(),
2243 _decode,
2244 )
2245 }
2246
2247 type EchoStructWithErrorResponseFut = fidl::client::QueryResponseFut<
2248 EchoEchoStructWithErrorResult,
2249 fidl::encoding::DefaultFuchsiaResourceDialect,
2250 >;
2251 fn r#echo_struct_with_error(
2252 &self,
2253 mut value: Struct,
2254 mut result_err: DefaultEnum,
2255 mut forward_to_server: &str,
2256 mut result_variant: RespondWith,
2257 ) -> Self::EchoStructWithErrorResponseFut {
2258 fn _decode(
2259 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2260 ) -> Result<EchoEchoStructWithErrorResult, fidl::Error> {
2261 let _response = fidl::client::decode_transaction_body::<
2262 fidl::encoding::ResultType<EchoEchoStructWithErrorResponse, DefaultEnum>,
2263 fidl::encoding::DefaultFuchsiaResourceDialect,
2264 0x46cb32652c4c0899,
2265 >(_buf?)?;
2266 Ok(_response.map(|x| x.value))
2267 }
2268 self.client
2269 .send_query_and_decode::<EchoEchoStructWithErrorRequest, EchoEchoStructWithErrorResult>(
2270 (&mut value, result_err, forward_to_server, result_variant),
2271 0x46cb32652c4c0899,
2272 fidl::encoding::DynamicFlags::empty(),
2273 _decode,
2274 )
2275 }
2276
2277 fn r#echo_struct_no_ret_val(
2278 &self,
2279 mut value: Struct,
2280 mut forward_to_server: &str,
2281 ) -> Result<(), fidl::Error> {
2282 self.client.send::<EchoEchoStructNoRetValRequest>(
2283 (&mut value, forward_to_server),
2284 0x1f763e602cf5892a,
2285 fidl::encoding::DynamicFlags::empty(),
2286 )
2287 }
2288
2289 type EchoArraysResponseFut =
2290 fidl::client::QueryResponseFut<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>;
2291 fn r#echo_arrays(
2292 &self,
2293 mut value: ArraysStruct,
2294 mut forward_to_server: &str,
2295 ) -> Self::EchoArraysResponseFut {
2296 fn _decode(
2297 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2298 ) -> Result<ArraysStruct, fidl::Error> {
2299 let _response = fidl::client::decode_transaction_body::<
2300 EchoEchoArraysResponse,
2301 fidl::encoding::DefaultFuchsiaResourceDialect,
2302 0x1b6019d5611f2470,
2303 >(_buf?)?;
2304 Ok(_response.value)
2305 }
2306 self.client.send_query_and_decode::<EchoEchoArraysRequest, ArraysStruct>(
2307 (&mut value, forward_to_server),
2308 0x1b6019d5611f2470,
2309 fidl::encoding::DynamicFlags::empty(),
2310 _decode,
2311 )
2312 }
2313
2314 type EchoArraysWithErrorResponseFut = fidl::client::QueryResponseFut<
2315 EchoEchoArraysWithErrorResult,
2316 fidl::encoding::DefaultFuchsiaResourceDialect,
2317 >;
2318 fn r#echo_arrays_with_error(
2319 &self,
2320 mut value: ArraysStruct,
2321 mut result_err: DefaultEnum,
2322 mut forward_to_server: &str,
2323 mut result_variant: RespondWith,
2324 ) -> Self::EchoArraysWithErrorResponseFut {
2325 fn _decode(
2326 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2327 ) -> Result<EchoEchoArraysWithErrorResult, fidl::Error> {
2328 let _response = fidl::client::decode_transaction_body::<
2329 fidl::encoding::ResultType<EchoEchoArraysWithErrorResponse, DefaultEnum>,
2330 fidl::encoding::DefaultFuchsiaResourceDialect,
2331 0x6dbf26e67e253afa,
2332 >(_buf?)?;
2333 Ok(_response.map(|x| x.value))
2334 }
2335 self.client
2336 .send_query_and_decode::<EchoEchoArraysWithErrorRequest, EchoEchoArraysWithErrorResult>(
2337 (&mut value, result_err, forward_to_server, result_variant),
2338 0x6dbf26e67e253afa,
2339 fidl::encoding::DynamicFlags::empty(),
2340 _decode,
2341 )
2342 }
2343
2344 type EchoVectorsResponseFut = fidl::client::QueryResponseFut<
2345 VectorsStruct,
2346 fidl::encoding::DefaultFuchsiaResourceDialect,
2347 >;
2348 fn r#echo_vectors(
2349 &self,
2350 mut value: VectorsStruct,
2351 mut forward_to_server: &str,
2352 ) -> Self::EchoVectorsResponseFut {
2353 fn _decode(
2354 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2355 ) -> Result<VectorsStruct, fidl::Error> {
2356 let _response = fidl::client::decode_transaction_body::<
2357 EchoEchoVectorsResponse,
2358 fidl::encoding::DefaultFuchsiaResourceDialect,
2359 0x1582623f0d9f6e5e,
2360 >(_buf?)?;
2361 Ok(_response.value)
2362 }
2363 self.client.send_query_and_decode::<EchoEchoVectorsRequest, VectorsStruct>(
2364 (&mut value, forward_to_server),
2365 0x1582623f0d9f6e5e,
2366 fidl::encoding::DynamicFlags::empty(),
2367 _decode,
2368 )
2369 }
2370
2371 type EchoVectorsWithErrorResponseFut = fidl::client::QueryResponseFut<
2372 EchoEchoVectorsWithErrorResult,
2373 fidl::encoding::DefaultFuchsiaResourceDialect,
2374 >;
2375 fn r#echo_vectors_with_error(
2376 &self,
2377 mut value: VectorsStruct,
2378 mut result_err: DefaultEnum,
2379 mut forward_to_server: &str,
2380 mut result_variant: RespondWith,
2381 ) -> Self::EchoVectorsWithErrorResponseFut {
2382 fn _decode(
2383 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2384 ) -> Result<EchoEchoVectorsWithErrorResult, fidl::Error> {
2385 let _response = fidl::client::decode_transaction_body::<
2386 fidl::encoding::ResultType<EchoEchoVectorsWithErrorResponse, DefaultEnum>,
2387 fidl::encoding::DefaultFuchsiaResourceDialect,
2388 0x730f163401e2b3e5,
2389 >(_buf?)?;
2390 Ok(_response.map(|x| x.value))
2391 }
2392 self.client.send_query_and_decode::<
2393 EchoEchoVectorsWithErrorRequest,
2394 EchoEchoVectorsWithErrorResult,
2395 >(
2396 (&mut value, result_err, forward_to_server, result_variant,),
2397 0x730f163401e2b3e5,
2398 fidl::encoding::DynamicFlags::empty(),
2399 _decode,
2400 )
2401 }
2402
2403 type EchoTableResponseFut = fidl::client::QueryResponseFut<
2404 AllTypesTable,
2405 fidl::encoding::DefaultFuchsiaResourceDialect,
2406 >;
2407 fn r#echo_table(
2408 &self,
2409 mut value: AllTypesTable,
2410 mut forward_to_server: &str,
2411 ) -> Self::EchoTableResponseFut {
2412 fn _decode(
2413 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2414 ) -> Result<AllTypesTable, fidl::Error> {
2415 let _response = fidl::client::decode_transaction_body::<
2416 EchoEchoTableResponse,
2417 fidl::encoding::DefaultFuchsiaResourceDialect,
2418 0x4f1fb0a512f47c4b,
2419 >(_buf?)?;
2420 Ok(_response.value)
2421 }
2422 self.client.send_query_and_decode::<EchoEchoTableRequest, AllTypesTable>(
2423 (&mut value, forward_to_server),
2424 0x4f1fb0a512f47c4b,
2425 fidl::encoding::DynamicFlags::empty(),
2426 _decode,
2427 )
2428 }
2429
2430 type EchoTableWithErrorResponseFut = fidl::client::QueryResponseFut<
2431 EchoEchoTableWithErrorResult,
2432 fidl::encoding::DefaultFuchsiaResourceDialect,
2433 >;
2434 fn r#echo_table_with_error(
2435 &self,
2436 mut value: AllTypesTable,
2437 mut result_err: DefaultEnum,
2438 mut forward_to_server: &str,
2439 mut result_variant: RespondWith,
2440 ) -> Self::EchoTableWithErrorResponseFut {
2441 fn _decode(
2442 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2443 ) -> Result<EchoEchoTableWithErrorResult, fidl::Error> {
2444 let _response = fidl::client::decode_transaction_body::<
2445 fidl::encoding::ResultType<EchoEchoTableWithErrorResponse, DefaultEnum>,
2446 fidl::encoding::DefaultFuchsiaResourceDialect,
2447 0x44e835cb1eb9a931,
2448 >(_buf?)?;
2449 Ok(_response.map(|x| x.value))
2450 }
2451 self.client
2452 .send_query_and_decode::<EchoEchoTableWithErrorRequest, EchoEchoTableWithErrorResult>(
2453 (&mut value, result_err, forward_to_server, result_variant),
2454 0x44e835cb1eb9a931,
2455 fidl::encoding::DynamicFlags::empty(),
2456 _decode,
2457 )
2458 }
2459
2460 type EchoXunionsResponseFut = fidl::client::QueryResponseFut<
2461 Vec<AllTypesXunion>,
2462 fidl::encoding::DefaultFuchsiaResourceDialect,
2463 >;
2464 fn r#echo_xunions(
2465 &self,
2466 mut value: Vec<AllTypesXunion>,
2467 mut forward_to_server: &str,
2468 ) -> Self::EchoXunionsResponseFut {
2469 fn _decode(
2470 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2471 ) -> Result<Vec<AllTypesXunion>, fidl::Error> {
2472 let _response = fidl::client::decode_transaction_body::<
2473 EchoEchoXunionsResponse,
2474 fidl::encoding::DefaultFuchsiaResourceDialect,
2475 0x3dc181909041a583,
2476 >(_buf?)?;
2477 Ok(_response.value)
2478 }
2479 self.client.send_query_and_decode::<EchoEchoXunionsRequest, Vec<AllTypesXunion>>(
2480 (value.as_mut(), forward_to_server),
2481 0x3dc181909041a583,
2482 fidl::encoding::DynamicFlags::empty(),
2483 _decode,
2484 )
2485 }
2486
2487 type EchoXunionsWithErrorResponseFut = fidl::client::QueryResponseFut<
2488 EchoEchoXunionsWithErrorResult,
2489 fidl::encoding::DefaultFuchsiaResourceDialect,
2490 >;
2491 fn r#echo_xunions_with_error(
2492 &self,
2493 mut value: Vec<AllTypesXunion>,
2494 mut result_err: DefaultEnum,
2495 mut forward_to_server: &str,
2496 mut result_variant: RespondWith,
2497 ) -> Self::EchoXunionsWithErrorResponseFut {
2498 fn _decode(
2499 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2500 ) -> Result<EchoEchoXunionsWithErrorResult, fidl::Error> {
2501 let _response = fidl::client::decode_transaction_body::<
2502 fidl::encoding::ResultType<EchoEchoXunionsWithErrorResponse, DefaultEnum>,
2503 fidl::encoding::DefaultFuchsiaResourceDialect,
2504 0x75184102667fa766,
2505 >(_buf?)?;
2506 Ok(_response.map(|x| x.value))
2507 }
2508 self.client.send_query_and_decode::<
2509 EchoEchoXunionsWithErrorRequest,
2510 EchoEchoXunionsWithErrorResult,
2511 >(
2512 (value.as_mut(), result_err, forward_to_server, result_variant,),
2513 0x75184102667fa766,
2514 fidl::encoding::DynamicFlags::empty(),
2515 _decode,
2516 )
2517 }
2518
2519 type EchoNamedStructResponseFut = fidl::client::QueryResponseFut<
2520 fidl_fidl_test_imported::SimpleStruct,
2521 fidl::encoding::DefaultFuchsiaResourceDialect,
2522 >;
2523 fn r#echo_named_struct(
2524 &self,
2525 mut value: &fidl_fidl_test_imported::SimpleStruct,
2526 mut forward_to_server: &str,
2527 ) -> Self::EchoNamedStructResponseFut {
2528 fn _decode(
2529 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2530 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
2531 let _response = fidl::client::decode_transaction_body::<
2532 fidl_fidl_test_imported::ResponseStruct,
2533 fidl::encoding::DefaultFuchsiaResourceDialect,
2534 0xf2d4aa9e65f7111,
2535 >(_buf?)?;
2536 Ok(_response.value)
2537 }
2538 self.client.send_query_and_decode::<
2539 fidl_fidl_test_imported::RequestStruct,
2540 fidl_fidl_test_imported::SimpleStruct,
2541 >(
2542 (value, forward_to_server,),
2543 0xf2d4aa9e65f7111,
2544 fidl::encoding::DynamicFlags::empty(),
2545 _decode,
2546 )
2547 }
2548
2549 type EchoNamedStructWithErrorResponseFut = fidl::client::QueryResponseFut<
2550 EchoEchoNamedStructWithErrorResult,
2551 fidl::encoding::DefaultFuchsiaResourceDialect,
2552 >;
2553 fn r#echo_named_struct_with_error(
2554 &self,
2555 mut value: &fidl_fidl_test_imported::SimpleStruct,
2556 mut result_err: u32,
2557 mut forward_to_server: &str,
2558 mut result_variant: fidl_fidl_test_imported::WantResponse,
2559 ) -> Self::EchoNamedStructWithErrorResponseFut {
2560 fn _decode(
2561 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2562 ) -> Result<EchoEchoNamedStructWithErrorResult, fidl::Error> {
2563 let _response = fidl::client::decode_transaction_body::<
2564 fidl::encoding::ResultType<fidl_fidl_test_imported::ResponseStruct, u32>,
2565 fidl::encoding::DefaultFuchsiaResourceDialect,
2566 0x5766fee9e74442e8,
2567 >(_buf?)?;
2568 Ok(_response.map(|x| x.value))
2569 }
2570 self.client.send_query_and_decode::<
2571 fidl_fidl_test_imported::ErrorableRequestStruct,
2572 EchoEchoNamedStructWithErrorResult,
2573 >(
2574 (value, result_err, forward_to_server, result_variant,),
2575 0x5766fee9e74442e8,
2576 fidl::encoding::DynamicFlags::empty(),
2577 _decode,
2578 )
2579 }
2580
2581 fn r#echo_named_struct_no_ret_val(
2582 &self,
2583 mut value: &fidl_fidl_test_imported::SimpleStruct,
2584 mut forward_to_server: &str,
2585 ) -> Result<(), fidl::Error> {
2586 self.client.send::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(
2587 (value, forward_to_server),
2588 0x3a50bbf7d2113ad7,
2589 fidl::encoding::DynamicFlags::empty(),
2590 )
2591 }
2592
2593 type EchoTablePayloadResponseFut = fidl::client::QueryResponseFut<
2594 ResponseTable,
2595 fidl::encoding::DefaultFuchsiaResourceDialect,
2596 >;
2597 fn r#echo_table_payload(
2598 &self,
2599 mut payload: &RequestTable,
2600 ) -> Self::EchoTablePayloadResponseFut {
2601 fn _decode(
2602 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2603 ) -> Result<ResponseTable, fidl::Error> {
2604 let _response = fidl::client::decode_transaction_body::<
2605 ResponseTable,
2606 fidl::encoding::DefaultFuchsiaResourceDialect,
2607 0x641d98087378c003,
2608 >(_buf?)?;
2609 Ok(_response)
2610 }
2611 self.client.send_query_and_decode::<RequestTable, ResponseTable>(
2612 payload,
2613 0x641d98087378c003,
2614 fidl::encoding::DynamicFlags::empty(),
2615 _decode,
2616 )
2617 }
2618
2619 type EchoTablePayloadWithErrorResponseFut = fidl::client::QueryResponseFut<
2620 EchoEchoTablePayloadWithErrorResult,
2621 fidl::encoding::DefaultFuchsiaResourceDialect,
2622 >;
2623 fn r#echo_table_payload_with_error(
2624 &self,
2625 mut payload: &EchoEchoTablePayloadWithErrorRequest,
2626 ) -> Self::EchoTablePayloadWithErrorResponseFut {
2627 fn _decode(
2628 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2629 ) -> Result<EchoEchoTablePayloadWithErrorResult, fidl::Error> {
2630 let _response = fidl::client::decode_transaction_body::<
2631 fidl::encoding::ResultType<ResponseTable, DefaultEnum>,
2632 fidl::encoding::DefaultFuchsiaResourceDialect,
2633 0x636ed243761ab66d,
2634 >(_buf?)?;
2635 Ok(_response.map(|x| x))
2636 }
2637 self.client.send_query_and_decode::<
2638 EchoEchoTablePayloadWithErrorRequest,
2639 EchoEchoTablePayloadWithErrorResult,
2640 >(
2641 payload,
2642 0x636ed243761ab66d,
2643 fidl::encoding::DynamicFlags::empty(),
2644 _decode,
2645 )
2646 }
2647
2648 fn r#echo_table_payload_no_ret_val(
2649 &self,
2650 mut payload: &RequestTable,
2651 ) -> Result<(), fidl::Error> {
2652 self.client.send::<RequestTable>(
2653 payload,
2654 0x32961f7d718569f8,
2655 fidl::encoding::DynamicFlags::empty(),
2656 )
2657 }
2658
2659 type EchoUnionPayloadResponseFut = fidl::client::QueryResponseFut<
2660 ResponseUnion,
2661 fidl::encoding::DefaultFuchsiaResourceDialect,
2662 >;
2663 fn r#echo_union_payload(
2664 &self,
2665 mut payload: &RequestUnion,
2666 ) -> Self::EchoUnionPayloadResponseFut {
2667 fn _decode(
2668 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2669 ) -> Result<ResponseUnion, fidl::Error> {
2670 let _response = fidl::client::decode_transaction_body::<
2671 ResponseUnion,
2672 fidl::encoding::DefaultFuchsiaResourceDialect,
2673 0x66def9e793f10c55,
2674 >(_buf?)?;
2675 Ok(_response)
2676 }
2677 self.client.send_query_and_decode::<RequestUnion, ResponseUnion>(
2678 payload,
2679 0x66def9e793f10c55,
2680 fidl::encoding::DynamicFlags::empty(),
2681 _decode,
2682 )
2683 }
2684
2685 type EchoUnionPayloadWithErrorResponseFut = fidl::client::QueryResponseFut<
2686 EchoEchoUnionPayloadWithErrorResult,
2687 fidl::encoding::DefaultFuchsiaResourceDialect,
2688 >;
2689 fn r#echo_union_payload_with_error(
2690 &self,
2691 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
2692 ) -> Self::EchoUnionPayloadWithErrorResponseFut {
2693 fn _decode(
2694 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2695 ) -> Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error> {
2696 let _response = fidl::client::decode_transaction_body::<
2697 fidl::encoding::ResultType<ResponseUnion, DefaultEnum>,
2698 fidl::encoding::DefaultFuchsiaResourceDialect,
2699 0x1be890d6e68ef063,
2700 >(_buf?)?;
2701 Ok(_response.map(|x| x))
2702 }
2703 self.client.send_query_and_decode::<
2704 EchoEchoUnionPayloadWithErrorRequest,
2705 EchoEchoUnionPayloadWithErrorResult,
2706 >(
2707 payload,
2708 0x1be890d6e68ef063,
2709 fidl::encoding::DynamicFlags::empty(),
2710 _decode,
2711 )
2712 }
2713
2714 fn r#echo_union_payload_no_ret_val(
2715 &self,
2716 mut payload: &RequestUnion,
2717 ) -> Result<(), fidl::Error> {
2718 self.client.send::<RequestUnion>(
2719 payload,
2720 0x11518bf346430040,
2721 fidl::encoding::DynamicFlags::empty(),
2722 )
2723 }
2724}
2725
2726pub struct EchoEventStream {
2727 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
2728}
2729
2730impl std::marker::Unpin for EchoEventStream {}
2731
2732impl futures::stream::FusedStream for EchoEventStream {
2733 fn is_terminated(&self) -> bool {
2734 self.event_receiver.is_terminated()
2735 }
2736}
2737
2738impl futures::Stream for EchoEventStream {
2739 type Item = Result<EchoEvent, fidl::Error>;
2740
2741 fn poll_next(
2742 mut self: std::pin::Pin<&mut Self>,
2743 cx: &mut std::task::Context<'_>,
2744 ) -> std::task::Poll<Option<Self::Item>> {
2745 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
2746 &mut self.event_receiver,
2747 cx
2748 )?) {
2749 Some(buf) => std::task::Poll::Ready(Some(EchoEvent::decode(buf))),
2750 None => std::task::Poll::Ready(None),
2751 }
2752 }
2753}
2754
2755#[derive(Debug)]
2756pub enum EchoEvent {
2757 EchoMinimalEvent {},
2758 EchoEvent { value: Struct },
2759 OnEchoNamedEvent { value: fidl_fidl_test_imported::SimpleStruct },
2760 OnEchoTablePayloadEvent { payload: ResponseTable },
2761 OnEchoUnionPayloadEvent { payload: ResponseUnion },
2762}
2763
2764impl EchoEvent {
2765 #[allow(irrefutable_let_patterns)]
2766 pub fn into_echo_minimal_event(self) -> Option<()> {
2767 if let EchoEvent::EchoMinimalEvent {} = self { Some(()) } else { None }
2768 }
2769 #[allow(irrefutable_let_patterns)]
2770 pub fn into_echo_event(self) -> Option<Struct> {
2771 if let EchoEvent::EchoEvent { value } = self { Some((value)) } else { None }
2772 }
2773 #[allow(irrefutable_let_patterns)]
2774 pub fn into_on_echo_named_event(self) -> Option<fidl_fidl_test_imported::SimpleStruct> {
2775 if let EchoEvent::OnEchoNamedEvent { value } = self { Some((value)) } else { None }
2776 }
2777 #[allow(irrefutable_let_patterns)]
2778 pub fn into_on_echo_table_payload_event(self) -> Option<ResponseTable> {
2779 if let EchoEvent::OnEchoTablePayloadEvent { payload } = self {
2780 Some((payload))
2781 } else {
2782 None
2783 }
2784 }
2785 #[allow(irrefutable_let_patterns)]
2786 pub fn into_on_echo_union_payload_event(self) -> Option<ResponseUnion> {
2787 if let EchoEvent::OnEchoUnionPayloadEvent { payload } = self {
2788 Some((payload))
2789 } else {
2790 None
2791 }
2792 }
2793
2794 fn decode(
2796 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
2797 ) -> Result<EchoEvent, fidl::Error> {
2798 let (bytes, _handles) = buf.split_mut();
2799 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2800 debug_assert_eq!(tx_header.tx_id, 0);
2801 match tx_header.ordinal {
2802 0x273b2029f1a0aee2 => {
2803 let mut out = fidl::new_empty!(
2804 fidl::encoding::EmptyPayload,
2805 fidl::encoding::DefaultFuchsiaResourceDialect
2806 );
2807 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&tx_header, _body_bytes, _handles, &mut out)?;
2808 Ok((EchoEvent::EchoMinimalEvent {}))
2809 }
2810 0x1219e12e0450024 => {
2811 let mut out = fidl::new_empty!(
2812 EchoEchoEventRequest,
2813 fidl::encoding::DefaultFuchsiaResourceDialect
2814 );
2815 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoEventRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2816 Ok((EchoEvent::EchoEvent { value: out.value }))
2817 }
2818 0x749ebde83348a374 => {
2819 let mut out = fidl::new_empty!(
2820 fidl_fidl_test_imported::ResponseStruct,
2821 fidl::encoding::DefaultFuchsiaResourceDialect
2822 );
2823 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ResponseStruct>(&tx_header, _body_bytes, _handles, &mut out)?;
2824 Ok((EchoEvent::OnEchoNamedEvent { value: out.value }))
2825 }
2826 0x708dddea1cb98430 => {
2827 let mut out =
2828 fidl::new_empty!(ResponseTable, fidl::encoding::DefaultFuchsiaResourceDialect);
2829 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ResponseTable>(&tx_header, _body_bytes, _handles, &mut out)?;
2830 Ok((EchoEvent::OnEchoTablePayloadEvent { payload: out }))
2831 }
2832 0x642f4c265a05f4c0 => {
2833 let mut out =
2834 fidl::new_empty!(ResponseUnion, fidl::encoding::DefaultFuchsiaResourceDialect);
2835 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ResponseUnion>(&tx_header, _body_bytes, _handles, &mut out)?;
2836 Ok((EchoEvent::OnEchoUnionPayloadEvent { payload: out }))
2837 }
2838 _ => Err(fidl::Error::UnknownOrdinal {
2839 ordinal: tx_header.ordinal,
2840 protocol_name: <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2841 }),
2842 }
2843 }
2844}
2845
2846pub struct EchoRequestStream {
2848 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2849 is_terminated: bool,
2850}
2851
2852impl std::marker::Unpin for EchoRequestStream {}
2853
2854impl futures::stream::FusedStream for EchoRequestStream {
2855 fn is_terminated(&self) -> bool {
2856 self.is_terminated
2857 }
2858}
2859
2860impl fidl::endpoints::RequestStream for EchoRequestStream {
2861 type Protocol = EchoMarker;
2862 type ControlHandle = EchoControlHandle;
2863
2864 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
2865 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
2866 }
2867
2868 fn control_handle(&self) -> Self::ControlHandle {
2869 EchoControlHandle { inner: self.inner.clone() }
2870 }
2871
2872 fn into_inner(
2873 self,
2874 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
2875 {
2876 (self.inner, self.is_terminated)
2877 }
2878
2879 fn from_inner(
2880 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2881 is_terminated: bool,
2882 ) -> Self {
2883 Self { inner, is_terminated }
2884 }
2885}
2886
2887impl futures::Stream for EchoRequestStream {
2888 type Item = Result<EchoRequest, fidl::Error>;
2889
2890 fn poll_next(
2891 mut self: std::pin::Pin<&mut Self>,
2892 cx: &mut std::task::Context<'_>,
2893 ) -> std::task::Poll<Option<Self::Item>> {
2894 let this = &mut *self;
2895 if this.inner.check_shutdown(cx) {
2896 this.is_terminated = true;
2897 return std::task::Poll::Ready(None);
2898 }
2899 if this.is_terminated {
2900 panic!("polled EchoRequestStream after completion");
2901 }
2902 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
2903 |bytes, handles| {
2904 match this.inner.channel().read_etc(cx, bytes, handles) {
2905 std::task::Poll::Ready(Ok(())) => {}
2906 std::task::Poll::Pending => return std::task::Poll::Pending,
2907 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2908 this.is_terminated = true;
2909 return std::task::Poll::Ready(None);
2910 }
2911 std::task::Poll::Ready(Err(e)) => {
2912 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2913 e.into(),
2914 ))));
2915 }
2916 }
2917
2918 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2920
2921 std::task::Poll::Ready(Some(match header.ordinal {
2922 0x1d545c738c7a8ee => {
2923 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2924 let mut req = fidl::new_empty!(
2925 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2926 fidl::encoding::DefaultFuchsiaResourceDialect
2927 );
2928 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest>(&header, _body_bytes, handles, &mut req)?;
2929 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2930 Ok(EchoRequest::EchoTableRequestComposed {
2931 payload: req,
2932 responder: EchoEchoTableRequestComposedResponder {
2933 control_handle: std::mem::ManuallyDrop::new(control_handle),
2934 tx_id: header.tx_id,
2935 },
2936 })
2937 }
2938 0x38a67e88d6106443 => {
2939 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2940 let mut req = fidl::new_empty!(fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
2941 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest>(&header, _body_bytes, handles, &mut req)?;
2942 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2943 Ok(EchoRequest::EchoUnionResponseWithErrorComposed {
2944 value: req.value,
2945 want_absolute_value: req.want_absolute_value,
2946 forward_to_server: req.forward_to_server,
2947 result_err: req.result_err,
2948 result_variant: req.result_variant,
2949
2950 responder: EchoEchoUnionResponseWithErrorComposedResponder {
2951 control_handle: std::mem::ManuallyDrop::new(control_handle),
2952 tx_id: header.tx_id,
2953 },
2954 })
2955 }
2956 0x39edd68c837482ec => {
2957 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2958 let mut req = fidl::new_empty!(
2959 EchoEchoMinimalRequest,
2960 fidl::encoding::DefaultFuchsiaResourceDialect
2961 );
2962 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalRequest>(&header, _body_bytes, handles, &mut req)?;
2963 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2964 Ok(EchoRequest::EchoMinimal {
2965 forward_to_server: req.forward_to_server,
2966
2967 responder: EchoEchoMinimalResponder {
2968 control_handle: std::mem::ManuallyDrop::new(control_handle),
2969 tx_id: header.tx_id,
2970 },
2971 })
2972 }
2973 0x36f4695996e35acc => {
2974 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2975 let mut req = fidl::new_empty!(
2976 EchoEchoMinimalWithErrorRequest,
2977 fidl::encoding::DefaultFuchsiaResourceDialect
2978 );
2979 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
2980 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2981 Ok(EchoRequest::EchoMinimalWithError {
2982 forward_to_server: req.forward_to_server,
2983 result_variant: req.result_variant,
2984
2985 responder: EchoEchoMinimalWithErrorResponder {
2986 control_handle: std::mem::ManuallyDrop::new(control_handle),
2987 tx_id: header.tx_id,
2988 },
2989 })
2990 }
2991 0x42693c143e2c3694 => {
2992 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2993 let mut req = fidl::new_empty!(
2994 EchoEchoMinimalNoRetValRequest,
2995 fidl::encoding::DefaultFuchsiaResourceDialect
2996 );
2997 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalNoRetValRequest>(&header, _body_bytes, handles, &mut req)?;
2998 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2999 Ok(EchoRequest::EchoMinimalNoRetVal {
3000 forward_to_server: req.forward_to_server,
3001
3002 control_handle,
3003 })
3004 }
3005 0x4c2f85818cc53f37 => {
3006 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3007 let mut req = fidl::new_empty!(
3008 EchoEchoStructRequest,
3009 fidl::encoding::DefaultFuchsiaResourceDialect
3010 );
3011 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructRequest>(&header, _body_bytes, handles, &mut req)?;
3012 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3013 Ok(EchoRequest::EchoStruct {
3014 value: req.value,
3015 forward_to_server: req.forward_to_server,
3016
3017 responder: EchoEchoStructResponder {
3018 control_handle: std::mem::ManuallyDrop::new(control_handle),
3019 tx_id: header.tx_id,
3020 },
3021 })
3022 }
3023 0x46cb32652c4c0899 => {
3024 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3025 let mut req = fidl::new_empty!(
3026 EchoEchoStructWithErrorRequest,
3027 fidl::encoding::DefaultFuchsiaResourceDialect
3028 );
3029 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3030 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3031 Ok(EchoRequest::EchoStructWithError {
3032 value: req.value,
3033 result_err: req.result_err,
3034 forward_to_server: req.forward_to_server,
3035 result_variant: req.result_variant,
3036
3037 responder: EchoEchoStructWithErrorResponder {
3038 control_handle: std::mem::ManuallyDrop::new(control_handle),
3039 tx_id: header.tx_id,
3040 },
3041 })
3042 }
3043 0x1f763e602cf5892a => {
3044 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3045 let mut req = fidl::new_empty!(
3046 EchoEchoStructNoRetValRequest,
3047 fidl::encoding::DefaultFuchsiaResourceDialect
3048 );
3049 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructNoRetValRequest>(&header, _body_bytes, handles, &mut req)?;
3050 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3051 Ok(EchoRequest::EchoStructNoRetVal {
3052 value: req.value,
3053 forward_to_server: req.forward_to_server,
3054
3055 control_handle,
3056 })
3057 }
3058 0x1b6019d5611f2470 => {
3059 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3060 let mut req = fidl::new_empty!(
3061 EchoEchoArraysRequest,
3062 fidl::encoding::DefaultFuchsiaResourceDialect
3063 );
3064 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoArraysRequest>(&header, _body_bytes, handles, &mut req)?;
3065 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3066 Ok(EchoRequest::EchoArrays {
3067 value: req.value,
3068 forward_to_server: req.forward_to_server,
3069
3070 responder: EchoEchoArraysResponder {
3071 control_handle: std::mem::ManuallyDrop::new(control_handle),
3072 tx_id: header.tx_id,
3073 },
3074 })
3075 }
3076 0x6dbf26e67e253afa => {
3077 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3078 let mut req = fidl::new_empty!(
3079 EchoEchoArraysWithErrorRequest,
3080 fidl::encoding::DefaultFuchsiaResourceDialect
3081 );
3082 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoArraysWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3083 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3084 Ok(EchoRequest::EchoArraysWithError {
3085 value: req.value,
3086 result_err: req.result_err,
3087 forward_to_server: req.forward_to_server,
3088 result_variant: req.result_variant,
3089
3090 responder: EchoEchoArraysWithErrorResponder {
3091 control_handle: std::mem::ManuallyDrop::new(control_handle),
3092 tx_id: header.tx_id,
3093 },
3094 })
3095 }
3096 0x1582623f0d9f6e5e => {
3097 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3098 let mut req = fidl::new_empty!(
3099 EchoEchoVectorsRequest,
3100 fidl::encoding::DefaultFuchsiaResourceDialect
3101 );
3102 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoVectorsRequest>(&header, _body_bytes, handles, &mut req)?;
3103 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3104 Ok(EchoRequest::EchoVectors {
3105 value: req.value,
3106 forward_to_server: req.forward_to_server,
3107
3108 responder: EchoEchoVectorsResponder {
3109 control_handle: std::mem::ManuallyDrop::new(control_handle),
3110 tx_id: header.tx_id,
3111 },
3112 })
3113 }
3114 0x730f163401e2b3e5 => {
3115 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3116 let mut req = fidl::new_empty!(
3117 EchoEchoVectorsWithErrorRequest,
3118 fidl::encoding::DefaultFuchsiaResourceDialect
3119 );
3120 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoVectorsWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3121 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3122 Ok(EchoRequest::EchoVectorsWithError {
3123 value: req.value,
3124 result_err: req.result_err,
3125 forward_to_server: req.forward_to_server,
3126 result_variant: req.result_variant,
3127
3128 responder: EchoEchoVectorsWithErrorResponder {
3129 control_handle: std::mem::ManuallyDrop::new(control_handle),
3130 tx_id: header.tx_id,
3131 },
3132 })
3133 }
3134 0x4f1fb0a512f47c4b => {
3135 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3136 let mut req = fidl::new_empty!(
3137 EchoEchoTableRequest,
3138 fidl::encoding::DefaultFuchsiaResourceDialect
3139 );
3140 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTableRequest>(&header, _body_bytes, handles, &mut req)?;
3141 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3142 Ok(EchoRequest::EchoTable {
3143 value: req.value,
3144 forward_to_server: req.forward_to_server,
3145
3146 responder: EchoEchoTableResponder {
3147 control_handle: std::mem::ManuallyDrop::new(control_handle),
3148 tx_id: header.tx_id,
3149 },
3150 })
3151 }
3152 0x44e835cb1eb9a931 => {
3153 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3154 let mut req = fidl::new_empty!(
3155 EchoEchoTableWithErrorRequest,
3156 fidl::encoding::DefaultFuchsiaResourceDialect
3157 );
3158 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTableWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3159 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3160 Ok(EchoRequest::EchoTableWithError {
3161 value: req.value,
3162 result_err: req.result_err,
3163 forward_to_server: req.forward_to_server,
3164 result_variant: req.result_variant,
3165
3166 responder: EchoEchoTableWithErrorResponder {
3167 control_handle: std::mem::ManuallyDrop::new(control_handle),
3168 tx_id: header.tx_id,
3169 },
3170 })
3171 }
3172 0x3dc181909041a583 => {
3173 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3174 let mut req = fidl::new_empty!(
3175 EchoEchoXunionsRequest,
3176 fidl::encoding::DefaultFuchsiaResourceDialect
3177 );
3178 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoXunionsRequest>(&header, _body_bytes, handles, &mut req)?;
3179 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3180 Ok(EchoRequest::EchoXunions {
3181 value: req.value,
3182 forward_to_server: req.forward_to_server,
3183
3184 responder: EchoEchoXunionsResponder {
3185 control_handle: std::mem::ManuallyDrop::new(control_handle),
3186 tx_id: header.tx_id,
3187 },
3188 })
3189 }
3190 0x75184102667fa766 => {
3191 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3192 let mut req = fidl::new_empty!(
3193 EchoEchoXunionsWithErrorRequest,
3194 fidl::encoding::DefaultFuchsiaResourceDialect
3195 );
3196 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoXunionsWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3197 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3198 Ok(EchoRequest::EchoXunionsWithError {
3199 value: req.value,
3200 result_err: req.result_err,
3201 forward_to_server: req.forward_to_server,
3202 result_variant: req.result_variant,
3203
3204 responder: EchoEchoXunionsWithErrorResponder {
3205 control_handle: std::mem::ManuallyDrop::new(control_handle),
3206 tx_id: header.tx_id,
3207 },
3208 })
3209 }
3210 0xf2d4aa9e65f7111 => {
3211 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3212 let mut req = fidl::new_empty!(
3213 fidl_fidl_test_imported::RequestStruct,
3214 fidl::encoding::DefaultFuchsiaResourceDialect
3215 );
3216 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::RequestStruct>(&header, _body_bytes, handles, &mut req)?;
3217 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3218 Ok(EchoRequest::EchoNamedStruct {
3219 value: req.value,
3220 forward_to_server: req.forward_to_server,
3221
3222 responder: EchoEchoNamedStructResponder {
3223 control_handle: std::mem::ManuallyDrop::new(control_handle),
3224 tx_id: header.tx_id,
3225 },
3226 })
3227 }
3228 0x5766fee9e74442e8 => {
3229 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3230 let mut req = fidl::new_empty!(
3231 fidl_fidl_test_imported::ErrorableRequestStruct,
3232 fidl::encoding::DefaultFuchsiaResourceDialect
3233 );
3234 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ErrorableRequestStruct>(&header, _body_bytes, handles, &mut req)?;
3235 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3236 Ok(EchoRequest::EchoNamedStructWithError {
3237 value: req.value,
3238 result_err: req.result_err,
3239 forward_to_server: req.forward_to_server,
3240 result_variant: req.result_variant,
3241
3242 responder: EchoEchoNamedStructWithErrorResponder {
3243 control_handle: std::mem::ManuallyDrop::new(control_handle),
3244 tx_id: header.tx_id,
3245 },
3246 })
3247 }
3248 0x3a50bbf7d2113ad7 => {
3249 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3250 let mut req = fidl::new_empty!(
3251 fidl_fidl_test_imported::EventTriggeringRequestStruct,
3252 fidl::encoding::DefaultFuchsiaResourceDialect
3253 );
3254 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(&header, _body_bytes, handles, &mut req)?;
3255 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3256 Ok(EchoRequest::EchoNamedStructNoRetVal {
3257 value: req.value,
3258 forward_to_server: req.forward_to_server,
3259
3260 control_handle,
3261 })
3262 }
3263 0x641d98087378c003 => {
3264 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3265 let mut req = fidl::new_empty!(
3266 RequestTable,
3267 fidl::encoding::DefaultFuchsiaResourceDialect
3268 );
3269 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestTable>(&header, _body_bytes, handles, &mut req)?;
3270 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3271 Ok(EchoRequest::EchoTablePayload {
3272 payload: req,
3273 responder: EchoEchoTablePayloadResponder {
3274 control_handle: std::mem::ManuallyDrop::new(control_handle),
3275 tx_id: header.tx_id,
3276 },
3277 })
3278 }
3279 0x636ed243761ab66d => {
3280 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3281 let mut req = fidl::new_empty!(
3282 EchoEchoTablePayloadWithErrorRequest,
3283 fidl::encoding::DefaultFuchsiaResourceDialect
3284 );
3285 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTablePayloadWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3286 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3287 Ok(EchoRequest::EchoTablePayloadWithError {
3288 payload: req,
3289 responder: EchoEchoTablePayloadWithErrorResponder {
3290 control_handle: std::mem::ManuallyDrop::new(control_handle),
3291 tx_id: header.tx_id,
3292 },
3293 })
3294 }
3295 0x32961f7d718569f8 => {
3296 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3297 let mut req = fidl::new_empty!(
3298 RequestTable,
3299 fidl::encoding::DefaultFuchsiaResourceDialect
3300 );
3301 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestTable>(&header, _body_bytes, handles, &mut req)?;
3302 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3303 Ok(EchoRequest::EchoTablePayloadNoRetVal { payload: req, control_handle })
3304 }
3305 0x66def9e793f10c55 => {
3306 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3307 let mut req = fidl::new_empty!(
3308 RequestUnion,
3309 fidl::encoding::DefaultFuchsiaResourceDialect
3310 );
3311 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestUnion>(&header, _body_bytes, handles, &mut req)?;
3312 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3313 Ok(EchoRequest::EchoUnionPayload {
3314 payload: req,
3315 responder: EchoEchoUnionPayloadResponder {
3316 control_handle: std::mem::ManuallyDrop::new(control_handle),
3317 tx_id: header.tx_id,
3318 },
3319 })
3320 }
3321 0x1be890d6e68ef063 => {
3322 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3323 let mut req = fidl::new_empty!(
3324 EchoEchoUnionPayloadWithErrorRequest,
3325 fidl::encoding::DefaultFuchsiaResourceDialect
3326 );
3327 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoUnionPayloadWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3328 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3329 Ok(EchoRequest::EchoUnionPayloadWithError {
3330 payload: req,
3331 responder: EchoEchoUnionPayloadWithErrorResponder {
3332 control_handle: std::mem::ManuallyDrop::new(control_handle),
3333 tx_id: header.tx_id,
3334 },
3335 })
3336 }
3337 0x11518bf346430040 => {
3338 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3339 let mut req = fidl::new_empty!(
3340 RequestUnion,
3341 fidl::encoding::DefaultFuchsiaResourceDialect
3342 );
3343 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestUnion>(&header, _body_bytes, handles, &mut req)?;
3344 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3345 Ok(EchoRequest::EchoUnionPayloadNoRetVal { payload: req, control_handle })
3346 }
3347 _ => Err(fidl::Error::UnknownOrdinal {
3348 ordinal: header.ordinal,
3349 protocol_name: <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
3350 }),
3351 }))
3352 },
3353 )
3354 }
3355}
3356
3357#[derive(Debug)]
3358pub enum EchoRequest {
3359 EchoTableRequestComposed {
3360 payload: fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
3361 responder: EchoEchoTableRequestComposedResponder,
3362 },
3363 EchoUnionResponseWithErrorComposed {
3364 value: i64,
3365 want_absolute_value: bool,
3366 forward_to_server: String,
3367 result_err: u32,
3368 result_variant: fidl_fidl_test_imported::WantResponse,
3369 responder: EchoEchoUnionResponseWithErrorComposedResponder,
3370 },
3371 EchoMinimal {
3372 forward_to_server: String,
3373 responder: EchoEchoMinimalResponder,
3374 },
3375 EchoMinimalWithError {
3376 forward_to_server: String,
3377 result_variant: RespondWith,
3378 responder: EchoEchoMinimalWithErrorResponder,
3379 },
3380 EchoMinimalNoRetVal {
3381 forward_to_server: String,
3382 control_handle: EchoControlHandle,
3383 },
3384 EchoStruct {
3385 value: Struct,
3386 forward_to_server: String,
3387 responder: EchoEchoStructResponder,
3388 },
3389 EchoStructWithError {
3390 value: Struct,
3391 result_err: DefaultEnum,
3392 forward_to_server: String,
3393 result_variant: RespondWith,
3394 responder: EchoEchoStructWithErrorResponder,
3395 },
3396 EchoStructNoRetVal {
3397 value: Struct,
3398 forward_to_server: String,
3399 control_handle: EchoControlHandle,
3400 },
3401 EchoArrays {
3402 value: ArraysStruct,
3403 forward_to_server: String,
3404 responder: EchoEchoArraysResponder,
3405 },
3406 EchoArraysWithError {
3407 value: ArraysStruct,
3408 result_err: DefaultEnum,
3409 forward_to_server: String,
3410 result_variant: RespondWith,
3411 responder: EchoEchoArraysWithErrorResponder,
3412 },
3413 EchoVectors {
3414 value: VectorsStruct,
3415 forward_to_server: String,
3416 responder: EchoEchoVectorsResponder,
3417 },
3418 EchoVectorsWithError {
3419 value: VectorsStruct,
3420 result_err: DefaultEnum,
3421 forward_to_server: String,
3422 result_variant: RespondWith,
3423 responder: EchoEchoVectorsWithErrorResponder,
3424 },
3425 EchoTable {
3426 value: AllTypesTable,
3427 forward_to_server: String,
3428 responder: EchoEchoTableResponder,
3429 },
3430 EchoTableWithError {
3431 value: AllTypesTable,
3432 result_err: DefaultEnum,
3433 forward_to_server: String,
3434 result_variant: RespondWith,
3435 responder: EchoEchoTableWithErrorResponder,
3436 },
3437 EchoXunions {
3438 value: Vec<AllTypesXunion>,
3439 forward_to_server: String,
3440 responder: EchoEchoXunionsResponder,
3441 },
3442 EchoXunionsWithError {
3443 value: Vec<AllTypesXunion>,
3444 result_err: DefaultEnum,
3445 forward_to_server: String,
3446 result_variant: RespondWith,
3447 responder: EchoEchoXunionsWithErrorResponder,
3448 },
3449 EchoNamedStruct {
3450 value: fidl_fidl_test_imported::SimpleStruct,
3451 forward_to_server: String,
3452 responder: EchoEchoNamedStructResponder,
3453 },
3454 EchoNamedStructWithError {
3455 value: fidl_fidl_test_imported::SimpleStruct,
3456 result_err: u32,
3457 forward_to_server: String,
3458 result_variant: fidl_fidl_test_imported::WantResponse,
3459 responder: EchoEchoNamedStructWithErrorResponder,
3460 },
3461 EchoNamedStructNoRetVal {
3462 value: fidl_fidl_test_imported::SimpleStruct,
3463 forward_to_server: String,
3464 control_handle: EchoControlHandle,
3465 },
3466 EchoTablePayload {
3467 payload: RequestTable,
3468 responder: EchoEchoTablePayloadResponder,
3469 },
3470 EchoTablePayloadWithError {
3471 payload: EchoEchoTablePayloadWithErrorRequest,
3472 responder: EchoEchoTablePayloadWithErrorResponder,
3473 },
3474 EchoTablePayloadNoRetVal {
3475 payload: RequestTable,
3476 control_handle: EchoControlHandle,
3477 },
3478 EchoUnionPayload {
3479 payload: RequestUnion,
3480 responder: EchoEchoUnionPayloadResponder,
3481 },
3482 EchoUnionPayloadWithError {
3483 payload: EchoEchoUnionPayloadWithErrorRequest,
3484 responder: EchoEchoUnionPayloadWithErrorResponder,
3485 },
3486 EchoUnionPayloadNoRetVal {
3487 payload: RequestUnion,
3488 control_handle: EchoControlHandle,
3489 },
3490}
3491
3492impl EchoRequest {
3493 #[allow(irrefutable_let_patterns)]
3494 pub fn into_echo_table_request_composed(
3495 self,
3496 ) -> Option<(
3497 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
3498 EchoEchoTableRequestComposedResponder,
3499 )> {
3500 if let EchoRequest::EchoTableRequestComposed { payload, responder } = self {
3501 Some((payload, responder))
3502 } else {
3503 None
3504 }
3505 }
3506
3507 #[allow(irrefutable_let_patterns)]
3508 pub fn into_echo_union_response_with_error_composed(
3509 self,
3510 ) -> Option<(
3511 i64,
3512 bool,
3513 String,
3514 u32,
3515 fidl_fidl_test_imported::WantResponse,
3516 EchoEchoUnionResponseWithErrorComposedResponder,
3517 )> {
3518 if let EchoRequest::EchoUnionResponseWithErrorComposed {
3519 value,
3520 want_absolute_value,
3521 forward_to_server,
3522 result_err,
3523 result_variant,
3524 responder,
3525 } = self
3526 {
3527 Some((
3528 value,
3529 want_absolute_value,
3530 forward_to_server,
3531 result_err,
3532 result_variant,
3533 responder,
3534 ))
3535 } else {
3536 None
3537 }
3538 }
3539
3540 #[allow(irrefutable_let_patterns)]
3541 pub fn into_echo_minimal(self) -> Option<(String, EchoEchoMinimalResponder)> {
3542 if let EchoRequest::EchoMinimal { forward_to_server, responder } = self {
3543 Some((forward_to_server, responder))
3544 } else {
3545 None
3546 }
3547 }
3548
3549 #[allow(irrefutable_let_patterns)]
3550 pub fn into_echo_minimal_with_error(
3551 self,
3552 ) -> Option<(String, RespondWith, EchoEchoMinimalWithErrorResponder)> {
3553 if let EchoRequest::EchoMinimalWithError { forward_to_server, result_variant, responder } =
3554 self
3555 {
3556 Some((forward_to_server, result_variant, responder))
3557 } else {
3558 None
3559 }
3560 }
3561
3562 #[allow(irrefutable_let_patterns)]
3563 pub fn into_echo_minimal_no_ret_val(self) -> Option<(String, EchoControlHandle)> {
3564 if let EchoRequest::EchoMinimalNoRetVal { forward_to_server, control_handle } = self {
3565 Some((forward_to_server, control_handle))
3566 } else {
3567 None
3568 }
3569 }
3570
3571 #[allow(irrefutable_let_patterns)]
3572 pub fn into_echo_struct(self) -> Option<(Struct, String, EchoEchoStructResponder)> {
3573 if let EchoRequest::EchoStruct { value, forward_to_server, responder } = self {
3574 Some((value, forward_to_server, responder))
3575 } else {
3576 None
3577 }
3578 }
3579
3580 #[allow(irrefutable_let_patterns)]
3581 pub fn into_echo_struct_with_error(
3582 self,
3583 ) -> Option<(Struct, DefaultEnum, String, RespondWith, EchoEchoStructWithErrorResponder)> {
3584 if let EchoRequest::EchoStructWithError {
3585 value,
3586 result_err,
3587 forward_to_server,
3588 result_variant,
3589 responder,
3590 } = self
3591 {
3592 Some((value, result_err, forward_to_server, result_variant, responder))
3593 } else {
3594 None
3595 }
3596 }
3597
3598 #[allow(irrefutable_let_patterns)]
3599 pub fn into_echo_struct_no_ret_val(self) -> Option<(Struct, String, EchoControlHandle)> {
3600 if let EchoRequest::EchoStructNoRetVal { value, forward_to_server, control_handle } = self {
3601 Some((value, forward_to_server, control_handle))
3602 } else {
3603 None
3604 }
3605 }
3606
3607 #[allow(irrefutable_let_patterns)]
3608 pub fn into_echo_arrays(self) -> Option<(ArraysStruct, String, EchoEchoArraysResponder)> {
3609 if let EchoRequest::EchoArrays { value, forward_to_server, responder } = self {
3610 Some((value, forward_to_server, responder))
3611 } else {
3612 None
3613 }
3614 }
3615
3616 #[allow(irrefutable_let_patterns)]
3617 pub fn into_echo_arrays_with_error(
3618 self,
3619 ) -> Option<(ArraysStruct, DefaultEnum, String, RespondWith, EchoEchoArraysWithErrorResponder)>
3620 {
3621 if let EchoRequest::EchoArraysWithError {
3622 value,
3623 result_err,
3624 forward_to_server,
3625 result_variant,
3626 responder,
3627 } = self
3628 {
3629 Some((value, result_err, forward_to_server, result_variant, responder))
3630 } else {
3631 None
3632 }
3633 }
3634
3635 #[allow(irrefutable_let_patterns)]
3636 pub fn into_echo_vectors(self) -> Option<(VectorsStruct, String, EchoEchoVectorsResponder)> {
3637 if let EchoRequest::EchoVectors { value, forward_to_server, responder } = self {
3638 Some((value, forward_to_server, responder))
3639 } else {
3640 None
3641 }
3642 }
3643
3644 #[allow(irrefutable_let_patterns)]
3645 pub fn into_echo_vectors_with_error(
3646 self,
3647 ) -> Option<(VectorsStruct, DefaultEnum, String, RespondWith, EchoEchoVectorsWithErrorResponder)>
3648 {
3649 if let EchoRequest::EchoVectorsWithError {
3650 value,
3651 result_err,
3652 forward_to_server,
3653 result_variant,
3654 responder,
3655 } = self
3656 {
3657 Some((value, result_err, forward_to_server, result_variant, responder))
3658 } else {
3659 None
3660 }
3661 }
3662
3663 #[allow(irrefutable_let_patterns)]
3664 pub fn into_echo_table(self) -> Option<(AllTypesTable, String, EchoEchoTableResponder)> {
3665 if let EchoRequest::EchoTable { value, forward_to_server, responder } = self {
3666 Some((value, forward_to_server, responder))
3667 } else {
3668 None
3669 }
3670 }
3671
3672 #[allow(irrefutable_let_patterns)]
3673 pub fn into_echo_table_with_error(
3674 self,
3675 ) -> Option<(AllTypesTable, DefaultEnum, String, RespondWith, EchoEchoTableWithErrorResponder)>
3676 {
3677 if let EchoRequest::EchoTableWithError {
3678 value,
3679 result_err,
3680 forward_to_server,
3681 result_variant,
3682 responder,
3683 } = self
3684 {
3685 Some((value, result_err, forward_to_server, result_variant, responder))
3686 } else {
3687 None
3688 }
3689 }
3690
3691 #[allow(irrefutable_let_patterns)]
3692 pub fn into_echo_xunions(
3693 self,
3694 ) -> Option<(Vec<AllTypesXunion>, String, EchoEchoXunionsResponder)> {
3695 if let EchoRequest::EchoXunions { value, forward_to_server, responder } = self {
3696 Some((value, forward_to_server, responder))
3697 } else {
3698 None
3699 }
3700 }
3701
3702 #[allow(irrefutable_let_patterns)]
3703 pub fn into_echo_xunions_with_error(
3704 self,
3705 ) -> Option<(
3706 Vec<AllTypesXunion>,
3707 DefaultEnum,
3708 String,
3709 RespondWith,
3710 EchoEchoXunionsWithErrorResponder,
3711 )> {
3712 if let EchoRequest::EchoXunionsWithError {
3713 value,
3714 result_err,
3715 forward_to_server,
3716 result_variant,
3717 responder,
3718 } = self
3719 {
3720 Some((value, result_err, forward_to_server, result_variant, responder))
3721 } else {
3722 None
3723 }
3724 }
3725
3726 #[allow(irrefutable_let_patterns)]
3727 pub fn into_echo_named_struct(
3728 self,
3729 ) -> Option<(fidl_fidl_test_imported::SimpleStruct, String, EchoEchoNamedStructResponder)> {
3730 if let EchoRequest::EchoNamedStruct { value, forward_to_server, responder } = self {
3731 Some((value, forward_to_server, responder))
3732 } else {
3733 None
3734 }
3735 }
3736
3737 #[allow(irrefutable_let_patterns)]
3738 pub fn into_echo_named_struct_with_error(
3739 self,
3740 ) -> Option<(
3741 fidl_fidl_test_imported::SimpleStruct,
3742 u32,
3743 String,
3744 fidl_fidl_test_imported::WantResponse,
3745 EchoEchoNamedStructWithErrorResponder,
3746 )> {
3747 if let EchoRequest::EchoNamedStructWithError {
3748 value,
3749 result_err,
3750 forward_to_server,
3751 result_variant,
3752 responder,
3753 } = self
3754 {
3755 Some((value, result_err, forward_to_server, result_variant, responder))
3756 } else {
3757 None
3758 }
3759 }
3760
3761 #[allow(irrefutable_let_patterns)]
3762 pub fn into_echo_named_struct_no_ret_val(
3763 self,
3764 ) -> Option<(fidl_fidl_test_imported::SimpleStruct, String, EchoControlHandle)> {
3765 if let EchoRequest::EchoNamedStructNoRetVal { value, forward_to_server, control_handle } =
3766 self
3767 {
3768 Some((value, forward_to_server, control_handle))
3769 } else {
3770 None
3771 }
3772 }
3773
3774 #[allow(irrefutable_let_patterns)]
3775 pub fn into_echo_table_payload(self) -> Option<(RequestTable, EchoEchoTablePayloadResponder)> {
3776 if let EchoRequest::EchoTablePayload { payload, responder } = self {
3777 Some((payload, responder))
3778 } else {
3779 None
3780 }
3781 }
3782
3783 #[allow(irrefutable_let_patterns)]
3784 pub fn into_echo_table_payload_with_error(
3785 self,
3786 ) -> Option<(EchoEchoTablePayloadWithErrorRequest, EchoEchoTablePayloadWithErrorResponder)>
3787 {
3788 if let EchoRequest::EchoTablePayloadWithError { payload, responder } = self {
3789 Some((payload, responder))
3790 } else {
3791 None
3792 }
3793 }
3794
3795 #[allow(irrefutable_let_patterns)]
3796 pub fn into_echo_table_payload_no_ret_val(self) -> Option<(RequestTable, EchoControlHandle)> {
3797 if let EchoRequest::EchoTablePayloadNoRetVal { payload, control_handle } = self {
3798 Some((payload, control_handle))
3799 } else {
3800 None
3801 }
3802 }
3803
3804 #[allow(irrefutable_let_patterns)]
3805 pub fn into_echo_union_payload(self) -> Option<(RequestUnion, EchoEchoUnionPayloadResponder)> {
3806 if let EchoRequest::EchoUnionPayload { payload, responder } = self {
3807 Some((payload, responder))
3808 } else {
3809 None
3810 }
3811 }
3812
3813 #[allow(irrefutable_let_patterns)]
3814 pub fn into_echo_union_payload_with_error(
3815 self,
3816 ) -> Option<(EchoEchoUnionPayloadWithErrorRequest, EchoEchoUnionPayloadWithErrorResponder)>
3817 {
3818 if let EchoRequest::EchoUnionPayloadWithError { payload, responder } = self {
3819 Some((payload, responder))
3820 } else {
3821 None
3822 }
3823 }
3824
3825 #[allow(irrefutable_let_patterns)]
3826 pub fn into_echo_union_payload_no_ret_val(self) -> Option<(RequestUnion, EchoControlHandle)> {
3827 if let EchoRequest::EchoUnionPayloadNoRetVal { payload, control_handle } = self {
3828 Some((payload, control_handle))
3829 } else {
3830 None
3831 }
3832 }
3833
3834 pub fn method_name(&self) -> &'static str {
3836 match *self {
3837 EchoRequest::EchoTableRequestComposed { .. } => "echo_table_request_composed",
3838 EchoRequest::EchoUnionResponseWithErrorComposed { .. } => {
3839 "echo_union_response_with_error_composed"
3840 }
3841 EchoRequest::EchoMinimal { .. } => "echo_minimal",
3842 EchoRequest::EchoMinimalWithError { .. } => "echo_minimal_with_error",
3843 EchoRequest::EchoMinimalNoRetVal { .. } => "echo_minimal_no_ret_val",
3844 EchoRequest::EchoStruct { .. } => "echo_struct",
3845 EchoRequest::EchoStructWithError { .. } => "echo_struct_with_error",
3846 EchoRequest::EchoStructNoRetVal { .. } => "echo_struct_no_ret_val",
3847 EchoRequest::EchoArrays { .. } => "echo_arrays",
3848 EchoRequest::EchoArraysWithError { .. } => "echo_arrays_with_error",
3849 EchoRequest::EchoVectors { .. } => "echo_vectors",
3850 EchoRequest::EchoVectorsWithError { .. } => "echo_vectors_with_error",
3851 EchoRequest::EchoTable { .. } => "echo_table",
3852 EchoRequest::EchoTableWithError { .. } => "echo_table_with_error",
3853 EchoRequest::EchoXunions { .. } => "echo_xunions",
3854 EchoRequest::EchoXunionsWithError { .. } => "echo_xunions_with_error",
3855 EchoRequest::EchoNamedStruct { .. } => "echo_named_struct",
3856 EchoRequest::EchoNamedStructWithError { .. } => "echo_named_struct_with_error",
3857 EchoRequest::EchoNamedStructNoRetVal { .. } => "echo_named_struct_no_ret_val",
3858 EchoRequest::EchoTablePayload { .. } => "echo_table_payload",
3859 EchoRequest::EchoTablePayloadWithError { .. } => "echo_table_payload_with_error",
3860 EchoRequest::EchoTablePayloadNoRetVal { .. } => "echo_table_payload_no_ret_val",
3861 EchoRequest::EchoUnionPayload { .. } => "echo_union_payload",
3862 EchoRequest::EchoUnionPayloadWithError { .. } => "echo_union_payload_with_error",
3863 EchoRequest::EchoUnionPayloadNoRetVal { .. } => "echo_union_payload_no_ret_val",
3864 }
3865 }
3866}
3867
3868#[derive(Debug, Clone)]
3869pub struct EchoControlHandle {
3870 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
3871}
3872
3873impl fidl::endpoints::ControlHandle for EchoControlHandle {
3874 fn shutdown(&self) {
3875 self.inner.shutdown()
3876 }
3877
3878 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
3879 self.inner.shutdown_with_epitaph(status)
3880 }
3881
3882 fn is_closed(&self) -> bool {
3883 self.inner.channel().is_closed()
3884 }
3885 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
3886 self.inner.channel().on_closed()
3887 }
3888
3889 #[cfg(target_os = "fuchsia")]
3890 fn signal_peer(
3891 &self,
3892 clear_mask: zx::Signals,
3893 set_mask: zx::Signals,
3894 ) -> Result<(), zx_status::Status> {
3895 use fidl::Peered;
3896 self.inner.channel().signal_peer(clear_mask, set_mask)
3897 }
3898}
3899
3900impl EchoControlHandle {
3901 pub fn send_echo_minimal_event(&self) -> Result<(), fidl::Error> {
3902 self.inner.send::<fidl::encoding::EmptyPayload>(
3903 (),
3904 0,
3905 0x273b2029f1a0aee2,
3906 fidl::encoding::DynamicFlags::empty(),
3907 )
3908 }
3909
3910 pub fn send_echo_event(&self, mut value: Struct) -> Result<(), fidl::Error> {
3911 self.inner.send::<EchoEchoEventRequest>(
3912 (&mut value,),
3913 0,
3914 0x1219e12e0450024,
3915 fidl::encoding::DynamicFlags::empty(),
3916 )
3917 }
3918
3919 pub fn send_on_echo_named_event(
3920 &self,
3921 mut value: &fidl_fidl_test_imported::SimpleStruct,
3922 ) -> Result<(), fidl::Error> {
3923 self.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
3924 (value,),
3925 0,
3926 0x749ebde83348a374,
3927 fidl::encoding::DynamicFlags::empty(),
3928 )
3929 }
3930
3931 pub fn send_on_echo_table_payload_event(
3932 &self,
3933 mut payload: &ResponseTable,
3934 ) -> Result<(), fidl::Error> {
3935 self.inner.send::<ResponseTable>(
3936 payload,
3937 0,
3938 0x708dddea1cb98430,
3939 fidl::encoding::DynamicFlags::empty(),
3940 )
3941 }
3942
3943 pub fn send_on_echo_union_payload_event(
3944 &self,
3945 mut payload: &ResponseUnion,
3946 ) -> Result<(), fidl::Error> {
3947 self.inner.send::<ResponseUnion>(
3948 payload,
3949 0,
3950 0x642f4c265a05f4c0,
3951 fidl::encoding::DynamicFlags::empty(),
3952 )
3953 }
3954}
3955
3956#[must_use = "FIDL methods require a response to be sent"]
3957#[derive(Debug)]
3958pub struct EchoEchoTableRequestComposedResponder {
3959 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
3960 tx_id: u32,
3961}
3962
3963impl std::ops::Drop for EchoEchoTableRequestComposedResponder {
3967 fn drop(&mut self) {
3968 self.control_handle.shutdown();
3969 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3971 }
3972}
3973
3974impl fidl::endpoints::Responder for EchoEchoTableRequestComposedResponder {
3975 type ControlHandle = EchoControlHandle;
3976
3977 fn control_handle(&self) -> &EchoControlHandle {
3978 &self.control_handle
3979 }
3980
3981 fn drop_without_shutdown(mut self) {
3982 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3984 std::mem::forget(self);
3986 }
3987}
3988
3989impl EchoEchoTableRequestComposedResponder {
3990 pub fn send(
3994 self,
3995 mut value: &fidl_fidl_test_imported::SimpleStruct,
3996 ) -> Result<(), fidl::Error> {
3997 let _result = self.send_raw(value);
3998 if _result.is_err() {
3999 self.control_handle.shutdown();
4000 }
4001 self.drop_without_shutdown();
4002 _result
4003 }
4004
4005 pub fn send_no_shutdown_on_err(
4007 self,
4008 mut value: &fidl_fidl_test_imported::SimpleStruct,
4009 ) -> Result<(), fidl::Error> {
4010 let _result = self.send_raw(value);
4011 self.drop_without_shutdown();
4012 _result
4013 }
4014
4015 fn send_raw(
4016 &self,
4017 mut value: &fidl_fidl_test_imported::SimpleStruct,
4018 ) -> Result<(), fidl::Error> {
4019 self.control_handle.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
4020 (value,),
4021 self.tx_id,
4022 0x1d545c738c7a8ee,
4023 fidl::encoding::DynamicFlags::empty(),
4024 )
4025 }
4026}
4027
4028#[must_use = "FIDL methods require a response to be sent"]
4029#[derive(Debug)]
4030pub struct EchoEchoUnionResponseWithErrorComposedResponder {
4031 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4032 tx_id: u32,
4033}
4034
4035impl std::ops::Drop for EchoEchoUnionResponseWithErrorComposedResponder {
4039 fn drop(&mut self) {
4040 self.control_handle.shutdown();
4041 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4043 }
4044}
4045
4046impl fidl::endpoints::Responder for EchoEchoUnionResponseWithErrorComposedResponder {
4047 type ControlHandle = EchoControlHandle;
4048
4049 fn control_handle(&self) -> &EchoControlHandle {
4050 &self.control_handle
4051 }
4052
4053 fn drop_without_shutdown(mut self) {
4054 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4056 std::mem::forget(self);
4058 }
4059}
4060
4061impl EchoEchoUnionResponseWithErrorComposedResponder {
4062 pub fn send(
4066 self,
4067 mut result: Result<
4068 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4069 u32,
4070 >,
4071 ) -> Result<(), fidl::Error> {
4072 let _result = self.send_raw(result);
4073 if _result.is_err() {
4074 self.control_handle.shutdown();
4075 }
4076 self.drop_without_shutdown();
4077 _result
4078 }
4079
4080 pub fn send_no_shutdown_on_err(
4082 self,
4083 mut result: Result<
4084 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4085 u32,
4086 >,
4087 ) -> Result<(), fidl::Error> {
4088 let _result = self.send_raw(result);
4089 self.drop_without_shutdown();
4090 _result
4091 }
4092
4093 fn send_raw(
4094 &self,
4095 mut result: Result<
4096 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4097 u32,
4098 >,
4099 ) -> Result<(), fidl::Error> {
4100 self.control_handle.inner.send::<fidl::encoding::ResultType<
4101 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4102 u32,
4103 >>(
4104 result,
4105 self.tx_id,
4106 0x38a67e88d6106443,
4107 fidl::encoding::DynamicFlags::empty(),
4108 )
4109 }
4110}
4111
4112#[must_use = "FIDL methods require a response to be sent"]
4113#[derive(Debug)]
4114pub struct EchoEchoMinimalResponder {
4115 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4116 tx_id: u32,
4117}
4118
4119impl std::ops::Drop for EchoEchoMinimalResponder {
4123 fn drop(&mut self) {
4124 self.control_handle.shutdown();
4125 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4127 }
4128}
4129
4130impl fidl::endpoints::Responder for EchoEchoMinimalResponder {
4131 type ControlHandle = EchoControlHandle;
4132
4133 fn control_handle(&self) -> &EchoControlHandle {
4134 &self.control_handle
4135 }
4136
4137 fn drop_without_shutdown(mut self) {
4138 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4140 std::mem::forget(self);
4142 }
4143}
4144
4145impl EchoEchoMinimalResponder {
4146 pub fn send(self) -> Result<(), fidl::Error> {
4150 let _result = self.send_raw();
4151 if _result.is_err() {
4152 self.control_handle.shutdown();
4153 }
4154 self.drop_without_shutdown();
4155 _result
4156 }
4157
4158 pub fn send_no_shutdown_on_err(self) -> Result<(), fidl::Error> {
4160 let _result = self.send_raw();
4161 self.drop_without_shutdown();
4162 _result
4163 }
4164
4165 fn send_raw(&self) -> Result<(), fidl::Error> {
4166 self.control_handle.inner.send::<fidl::encoding::EmptyPayload>(
4167 (),
4168 self.tx_id,
4169 0x39edd68c837482ec,
4170 fidl::encoding::DynamicFlags::empty(),
4171 )
4172 }
4173}
4174
4175#[must_use = "FIDL methods require a response to be sent"]
4176#[derive(Debug)]
4177pub struct EchoEchoMinimalWithErrorResponder {
4178 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4179 tx_id: u32,
4180}
4181
4182impl std::ops::Drop for EchoEchoMinimalWithErrorResponder {
4186 fn drop(&mut self) {
4187 self.control_handle.shutdown();
4188 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4190 }
4191}
4192
4193impl fidl::endpoints::Responder for EchoEchoMinimalWithErrorResponder {
4194 type ControlHandle = EchoControlHandle;
4195
4196 fn control_handle(&self) -> &EchoControlHandle {
4197 &self.control_handle
4198 }
4199
4200 fn drop_without_shutdown(mut self) {
4201 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4203 std::mem::forget(self);
4205 }
4206}
4207
4208impl EchoEchoMinimalWithErrorResponder {
4209 pub fn send(self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4213 let _result = self.send_raw(result);
4214 if _result.is_err() {
4215 self.control_handle.shutdown();
4216 }
4217 self.drop_without_shutdown();
4218 _result
4219 }
4220
4221 pub fn send_no_shutdown_on_err(self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4223 let _result = self.send_raw(result);
4224 self.drop_without_shutdown();
4225 _result
4226 }
4227
4228 fn send_raw(&self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4229 self.control_handle
4230 .inner
4231 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>>(
4232 result,
4233 self.tx_id,
4234 0x36f4695996e35acc,
4235 fidl::encoding::DynamicFlags::empty(),
4236 )
4237 }
4238}
4239
4240#[must_use = "FIDL methods require a response to be sent"]
4241#[derive(Debug)]
4242pub struct EchoEchoStructResponder {
4243 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4244 tx_id: u32,
4245}
4246
4247impl std::ops::Drop for EchoEchoStructResponder {
4251 fn drop(&mut self) {
4252 self.control_handle.shutdown();
4253 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4255 }
4256}
4257
4258impl fidl::endpoints::Responder for EchoEchoStructResponder {
4259 type ControlHandle = EchoControlHandle;
4260
4261 fn control_handle(&self) -> &EchoControlHandle {
4262 &self.control_handle
4263 }
4264
4265 fn drop_without_shutdown(mut self) {
4266 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4268 std::mem::forget(self);
4270 }
4271}
4272
4273impl EchoEchoStructResponder {
4274 pub fn send(self, mut value: Struct) -> Result<(), fidl::Error> {
4278 let _result = self.send_raw(value);
4279 if _result.is_err() {
4280 self.control_handle.shutdown();
4281 }
4282 self.drop_without_shutdown();
4283 _result
4284 }
4285
4286 pub fn send_no_shutdown_on_err(self, mut value: Struct) -> Result<(), fidl::Error> {
4288 let _result = self.send_raw(value);
4289 self.drop_without_shutdown();
4290 _result
4291 }
4292
4293 fn send_raw(&self, mut value: Struct) -> Result<(), fidl::Error> {
4294 self.control_handle.inner.send::<EchoEchoStructResponse>(
4295 (&mut value,),
4296 self.tx_id,
4297 0x4c2f85818cc53f37,
4298 fidl::encoding::DynamicFlags::empty(),
4299 )
4300 }
4301}
4302
4303#[must_use = "FIDL methods require a response to be sent"]
4304#[derive(Debug)]
4305pub struct EchoEchoStructWithErrorResponder {
4306 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4307 tx_id: u32,
4308}
4309
4310impl std::ops::Drop for EchoEchoStructWithErrorResponder {
4314 fn drop(&mut self) {
4315 self.control_handle.shutdown();
4316 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4318 }
4319}
4320
4321impl fidl::endpoints::Responder for EchoEchoStructWithErrorResponder {
4322 type ControlHandle = EchoControlHandle;
4323
4324 fn control_handle(&self) -> &EchoControlHandle {
4325 &self.control_handle
4326 }
4327
4328 fn drop_without_shutdown(mut self) {
4329 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4331 std::mem::forget(self);
4333 }
4334}
4335
4336impl EchoEchoStructWithErrorResponder {
4337 pub fn send(self, mut result: Result<Struct, DefaultEnum>) -> Result<(), fidl::Error> {
4341 let _result = self.send_raw(result);
4342 if _result.is_err() {
4343 self.control_handle.shutdown();
4344 }
4345 self.drop_without_shutdown();
4346 _result
4347 }
4348
4349 pub fn send_no_shutdown_on_err(
4351 self,
4352 mut result: Result<Struct, DefaultEnum>,
4353 ) -> Result<(), fidl::Error> {
4354 let _result = self.send_raw(result);
4355 self.drop_without_shutdown();
4356 _result
4357 }
4358
4359 fn send_raw(&self, mut result: Result<Struct, DefaultEnum>) -> Result<(), fidl::Error> {
4360 self.control_handle.inner.send::<fidl::encoding::ResultType<
4361 EchoEchoStructWithErrorResponse,
4362 DefaultEnum,
4363 >>(
4364 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4365 self.tx_id,
4366 0x46cb32652c4c0899,
4367 fidl::encoding::DynamicFlags::empty(),
4368 )
4369 }
4370}
4371
4372#[must_use = "FIDL methods require a response to be sent"]
4373#[derive(Debug)]
4374pub struct EchoEchoArraysResponder {
4375 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4376 tx_id: u32,
4377}
4378
4379impl std::ops::Drop for EchoEchoArraysResponder {
4383 fn drop(&mut self) {
4384 self.control_handle.shutdown();
4385 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4387 }
4388}
4389
4390impl fidl::endpoints::Responder for EchoEchoArraysResponder {
4391 type ControlHandle = EchoControlHandle;
4392
4393 fn control_handle(&self) -> &EchoControlHandle {
4394 &self.control_handle
4395 }
4396
4397 fn drop_without_shutdown(mut self) {
4398 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4400 std::mem::forget(self);
4402 }
4403}
4404
4405impl EchoEchoArraysResponder {
4406 pub fn send(self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4410 let _result = self.send_raw(value);
4411 if _result.is_err() {
4412 self.control_handle.shutdown();
4413 }
4414 self.drop_without_shutdown();
4415 _result
4416 }
4417
4418 pub fn send_no_shutdown_on_err(self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4420 let _result = self.send_raw(value);
4421 self.drop_without_shutdown();
4422 _result
4423 }
4424
4425 fn send_raw(&self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4426 self.control_handle.inner.send::<EchoEchoArraysResponse>(
4427 (&mut value,),
4428 self.tx_id,
4429 0x1b6019d5611f2470,
4430 fidl::encoding::DynamicFlags::empty(),
4431 )
4432 }
4433}
4434
4435#[must_use = "FIDL methods require a response to be sent"]
4436#[derive(Debug)]
4437pub struct EchoEchoArraysWithErrorResponder {
4438 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4439 tx_id: u32,
4440}
4441
4442impl std::ops::Drop for EchoEchoArraysWithErrorResponder {
4446 fn drop(&mut self) {
4447 self.control_handle.shutdown();
4448 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4450 }
4451}
4452
4453impl fidl::endpoints::Responder for EchoEchoArraysWithErrorResponder {
4454 type ControlHandle = EchoControlHandle;
4455
4456 fn control_handle(&self) -> &EchoControlHandle {
4457 &self.control_handle
4458 }
4459
4460 fn drop_without_shutdown(mut self) {
4461 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4463 std::mem::forget(self);
4465 }
4466}
4467
4468impl EchoEchoArraysWithErrorResponder {
4469 pub fn send(self, mut result: Result<ArraysStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4473 let _result = self.send_raw(result);
4474 if _result.is_err() {
4475 self.control_handle.shutdown();
4476 }
4477 self.drop_without_shutdown();
4478 _result
4479 }
4480
4481 pub fn send_no_shutdown_on_err(
4483 self,
4484 mut result: Result<ArraysStruct, DefaultEnum>,
4485 ) -> Result<(), fidl::Error> {
4486 let _result = self.send_raw(result);
4487 self.drop_without_shutdown();
4488 _result
4489 }
4490
4491 fn send_raw(&self, mut result: Result<ArraysStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4492 self.control_handle.inner.send::<fidl::encoding::ResultType<
4493 EchoEchoArraysWithErrorResponse,
4494 DefaultEnum,
4495 >>(
4496 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4497 self.tx_id,
4498 0x6dbf26e67e253afa,
4499 fidl::encoding::DynamicFlags::empty(),
4500 )
4501 }
4502}
4503
4504#[must_use = "FIDL methods require a response to be sent"]
4505#[derive(Debug)]
4506pub struct EchoEchoVectorsResponder {
4507 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4508 tx_id: u32,
4509}
4510
4511impl std::ops::Drop for EchoEchoVectorsResponder {
4515 fn drop(&mut self) {
4516 self.control_handle.shutdown();
4517 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4519 }
4520}
4521
4522impl fidl::endpoints::Responder for EchoEchoVectorsResponder {
4523 type ControlHandle = EchoControlHandle;
4524
4525 fn control_handle(&self) -> &EchoControlHandle {
4526 &self.control_handle
4527 }
4528
4529 fn drop_without_shutdown(mut self) {
4530 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4532 std::mem::forget(self);
4534 }
4535}
4536
4537impl EchoEchoVectorsResponder {
4538 pub fn send(self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4542 let _result = self.send_raw(value);
4543 if _result.is_err() {
4544 self.control_handle.shutdown();
4545 }
4546 self.drop_without_shutdown();
4547 _result
4548 }
4549
4550 pub fn send_no_shutdown_on_err(self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4552 let _result = self.send_raw(value);
4553 self.drop_without_shutdown();
4554 _result
4555 }
4556
4557 fn send_raw(&self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4558 self.control_handle.inner.send::<EchoEchoVectorsResponse>(
4559 (&mut value,),
4560 self.tx_id,
4561 0x1582623f0d9f6e5e,
4562 fidl::encoding::DynamicFlags::empty(),
4563 )
4564 }
4565}
4566
4567#[must_use = "FIDL methods require a response to be sent"]
4568#[derive(Debug)]
4569pub struct EchoEchoVectorsWithErrorResponder {
4570 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4571 tx_id: u32,
4572}
4573
4574impl std::ops::Drop for EchoEchoVectorsWithErrorResponder {
4578 fn drop(&mut self) {
4579 self.control_handle.shutdown();
4580 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4582 }
4583}
4584
4585impl fidl::endpoints::Responder for EchoEchoVectorsWithErrorResponder {
4586 type ControlHandle = EchoControlHandle;
4587
4588 fn control_handle(&self) -> &EchoControlHandle {
4589 &self.control_handle
4590 }
4591
4592 fn drop_without_shutdown(mut self) {
4593 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4595 std::mem::forget(self);
4597 }
4598}
4599
4600impl EchoEchoVectorsWithErrorResponder {
4601 pub fn send(self, mut result: Result<VectorsStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4605 let _result = self.send_raw(result);
4606 if _result.is_err() {
4607 self.control_handle.shutdown();
4608 }
4609 self.drop_without_shutdown();
4610 _result
4611 }
4612
4613 pub fn send_no_shutdown_on_err(
4615 self,
4616 mut result: Result<VectorsStruct, DefaultEnum>,
4617 ) -> Result<(), fidl::Error> {
4618 let _result = self.send_raw(result);
4619 self.drop_without_shutdown();
4620 _result
4621 }
4622
4623 fn send_raw(&self, mut result: Result<VectorsStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4624 self.control_handle.inner.send::<fidl::encoding::ResultType<
4625 EchoEchoVectorsWithErrorResponse,
4626 DefaultEnum,
4627 >>(
4628 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4629 self.tx_id,
4630 0x730f163401e2b3e5,
4631 fidl::encoding::DynamicFlags::empty(),
4632 )
4633 }
4634}
4635
4636#[must_use = "FIDL methods require a response to be sent"]
4637#[derive(Debug)]
4638pub struct EchoEchoTableResponder {
4639 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4640 tx_id: u32,
4641}
4642
4643impl std::ops::Drop for EchoEchoTableResponder {
4647 fn drop(&mut self) {
4648 self.control_handle.shutdown();
4649 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4651 }
4652}
4653
4654impl fidl::endpoints::Responder for EchoEchoTableResponder {
4655 type ControlHandle = EchoControlHandle;
4656
4657 fn control_handle(&self) -> &EchoControlHandle {
4658 &self.control_handle
4659 }
4660
4661 fn drop_without_shutdown(mut self) {
4662 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4664 std::mem::forget(self);
4666 }
4667}
4668
4669impl EchoEchoTableResponder {
4670 pub fn send(self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4674 let _result = self.send_raw(value);
4675 if _result.is_err() {
4676 self.control_handle.shutdown();
4677 }
4678 self.drop_without_shutdown();
4679 _result
4680 }
4681
4682 pub fn send_no_shutdown_on_err(self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4684 let _result = self.send_raw(value);
4685 self.drop_without_shutdown();
4686 _result
4687 }
4688
4689 fn send_raw(&self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4690 self.control_handle.inner.send::<EchoEchoTableResponse>(
4691 (&mut value,),
4692 self.tx_id,
4693 0x4f1fb0a512f47c4b,
4694 fidl::encoding::DynamicFlags::empty(),
4695 )
4696 }
4697}
4698
4699#[must_use = "FIDL methods require a response to be sent"]
4700#[derive(Debug)]
4701pub struct EchoEchoTableWithErrorResponder {
4702 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4703 tx_id: u32,
4704}
4705
4706impl std::ops::Drop for EchoEchoTableWithErrorResponder {
4710 fn drop(&mut self) {
4711 self.control_handle.shutdown();
4712 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4714 }
4715}
4716
4717impl fidl::endpoints::Responder for EchoEchoTableWithErrorResponder {
4718 type ControlHandle = EchoControlHandle;
4719
4720 fn control_handle(&self) -> &EchoControlHandle {
4721 &self.control_handle
4722 }
4723
4724 fn drop_without_shutdown(mut self) {
4725 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4727 std::mem::forget(self);
4729 }
4730}
4731
4732impl EchoEchoTableWithErrorResponder {
4733 pub fn send(self, mut result: Result<AllTypesTable, DefaultEnum>) -> Result<(), fidl::Error> {
4737 let _result = self.send_raw(result);
4738 if _result.is_err() {
4739 self.control_handle.shutdown();
4740 }
4741 self.drop_without_shutdown();
4742 _result
4743 }
4744
4745 pub fn send_no_shutdown_on_err(
4747 self,
4748 mut result: Result<AllTypesTable, DefaultEnum>,
4749 ) -> Result<(), fidl::Error> {
4750 let _result = self.send_raw(result);
4751 self.drop_without_shutdown();
4752 _result
4753 }
4754
4755 fn send_raw(&self, mut result: Result<AllTypesTable, DefaultEnum>) -> Result<(), fidl::Error> {
4756 self.control_handle.inner.send::<fidl::encoding::ResultType<
4757 EchoEchoTableWithErrorResponse,
4758 DefaultEnum,
4759 >>(
4760 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4761 self.tx_id,
4762 0x44e835cb1eb9a931,
4763 fidl::encoding::DynamicFlags::empty(),
4764 )
4765 }
4766}
4767
4768#[must_use = "FIDL methods require a response to be sent"]
4769#[derive(Debug)]
4770pub struct EchoEchoXunionsResponder {
4771 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4772 tx_id: u32,
4773}
4774
4775impl std::ops::Drop for EchoEchoXunionsResponder {
4779 fn drop(&mut self) {
4780 self.control_handle.shutdown();
4781 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4783 }
4784}
4785
4786impl fidl::endpoints::Responder for EchoEchoXunionsResponder {
4787 type ControlHandle = EchoControlHandle;
4788
4789 fn control_handle(&self) -> &EchoControlHandle {
4790 &self.control_handle
4791 }
4792
4793 fn drop_without_shutdown(mut self) {
4794 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4796 std::mem::forget(self);
4798 }
4799}
4800
4801impl EchoEchoXunionsResponder {
4802 pub fn send(self, mut value: Vec<AllTypesXunion>) -> Result<(), fidl::Error> {
4806 let _result = self.send_raw(value);
4807 if _result.is_err() {
4808 self.control_handle.shutdown();
4809 }
4810 self.drop_without_shutdown();
4811 _result
4812 }
4813
4814 pub fn send_no_shutdown_on_err(
4816 self,
4817 mut value: Vec<AllTypesXunion>,
4818 ) -> Result<(), fidl::Error> {
4819 let _result = self.send_raw(value);
4820 self.drop_without_shutdown();
4821 _result
4822 }
4823
4824 fn send_raw(&self, mut value: Vec<AllTypesXunion>) -> Result<(), fidl::Error> {
4825 self.control_handle.inner.send::<EchoEchoXunionsResponse>(
4826 (value.as_mut(),),
4827 self.tx_id,
4828 0x3dc181909041a583,
4829 fidl::encoding::DynamicFlags::empty(),
4830 )
4831 }
4832}
4833
4834#[must_use = "FIDL methods require a response to be sent"]
4835#[derive(Debug)]
4836pub struct EchoEchoXunionsWithErrorResponder {
4837 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4838 tx_id: u32,
4839}
4840
4841impl std::ops::Drop for EchoEchoXunionsWithErrorResponder {
4845 fn drop(&mut self) {
4846 self.control_handle.shutdown();
4847 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4849 }
4850}
4851
4852impl fidl::endpoints::Responder for EchoEchoXunionsWithErrorResponder {
4853 type ControlHandle = EchoControlHandle;
4854
4855 fn control_handle(&self) -> &EchoControlHandle {
4856 &self.control_handle
4857 }
4858
4859 fn drop_without_shutdown(mut self) {
4860 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4862 std::mem::forget(self);
4864 }
4865}
4866
4867impl EchoEchoXunionsWithErrorResponder {
4868 pub fn send(
4872 self,
4873 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4874 ) -> Result<(), fidl::Error> {
4875 let _result = self.send_raw(result);
4876 if _result.is_err() {
4877 self.control_handle.shutdown();
4878 }
4879 self.drop_without_shutdown();
4880 _result
4881 }
4882
4883 pub fn send_no_shutdown_on_err(
4885 self,
4886 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4887 ) -> Result<(), fidl::Error> {
4888 let _result = self.send_raw(result);
4889 self.drop_without_shutdown();
4890 _result
4891 }
4892
4893 fn send_raw(
4894 &self,
4895 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4896 ) -> Result<(), fidl::Error> {
4897 self.control_handle.inner.send::<fidl::encoding::ResultType<
4898 EchoEchoXunionsWithErrorResponse,
4899 DefaultEnum,
4900 >>(
4901 result.as_mut().map_err(|e| *e).map(|value| (value.as_mut_slice(),)),
4902 self.tx_id,
4903 0x75184102667fa766,
4904 fidl::encoding::DynamicFlags::empty(),
4905 )
4906 }
4907}
4908
4909#[must_use = "FIDL methods require a response to be sent"]
4910#[derive(Debug)]
4911pub struct EchoEchoNamedStructResponder {
4912 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4913 tx_id: u32,
4914}
4915
4916impl std::ops::Drop for EchoEchoNamedStructResponder {
4920 fn drop(&mut self) {
4921 self.control_handle.shutdown();
4922 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4924 }
4925}
4926
4927impl fidl::endpoints::Responder for EchoEchoNamedStructResponder {
4928 type ControlHandle = EchoControlHandle;
4929
4930 fn control_handle(&self) -> &EchoControlHandle {
4931 &self.control_handle
4932 }
4933
4934 fn drop_without_shutdown(mut self) {
4935 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4937 std::mem::forget(self);
4939 }
4940}
4941
4942impl EchoEchoNamedStructResponder {
4943 pub fn send(
4947 self,
4948 mut value: &fidl_fidl_test_imported::SimpleStruct,
4949 ) -> Result<(), fidl::Error> {
4950 let _result = self.send_raw(value);
4951 if _result.is_err() {
4952 self.control_handle.shutdown();
4953 }
4954 self.drop_without_shutdown();
4955 _result
4956 }
4957
4958 pub fn send_no_shutdown_on_err(
4960 self,
4961 mut value: &fidl_fidl_test_imported::SimpleStruct,
4962 ) -> Result<(), fidl::Error> {
4963 let _result = self.send_raw(value);
4964 self.drop_without_shutdown();
4965 _result
4966 }
4967
4968 fn send_raw(
4969 &self,
4970 mut value: &fidl_fidl_test_imported::SimpleStruct,
4971 ) -> Result<(), fidl::Error> {
4972 self.control_handle.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
4973 (value,),
4974 self.tx_id,
4975 0xf2d4aa9e65f7111,
4976 fidl::encoding::DynamicFlags::empty(),
4977 )
4978 }
4979}
4980
4981#[must_use = "FIDL methods require a response to be sent"]
4982#[derive(Debug)]
4983pub struct EchoEchoNamedStructWithErrorResponder {
4984 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4985 tx_id: u32,
4986}
4987
4988impl std::ops::Drop for EchoEchoNamedStructWithErrorResponder {
4992 fn drop(&mut self) {
4993 self.control_handle.shutdown();
4994 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4996 }
4997}
4998
4999impl fidl::endpoints::Responder for EchoEchoNamedStructWithErrorResponder {
5000 type ControlHandle = EchoControlHandle;
5001
5002 fn control_handle(&self) -> &EchoControlHandle {
5003 &self.control_handle
5004 }
5005
5006 fn drop_without_shutdown(mut self) {
5007 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5009 std::mem::forget(self);
5011 }
5012}
5013
5014impl EchoEchoNamedStructWithErrorResponder {
5015 pub fn send(
5019 self,
5020 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5021 ) -> Result<(), fidl::Error> {
5022 let _result = self.send_raw(result);
5023 if _result.is_err() {
5024 self.control_handle.shutdown();
5025 }
5026 self.drop_without_shutdown();
5027 _result
5028 }
5029
5030 pub fn send_no_shutdown_on_err(
5032 self,
5033 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5034 ) -> Result<(), fidl::Error> {
5035 let _result = self.send_raw(result);
5036 self.drop_without_shutdown();
5037 _result
5038 }
5039
5040 fn send_raw(
5041 &self,
5042 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5043 ) -> Result<(), fidl::Error> {
5044 self.control_handle.inner.send::<fidl::encoding::ResultType<
5045 fidl_fidl_test_imported::ResponseStruct,
5046 u32,
5047 >>(
5048 result.map(|value| (value,)),
5049 self.tx_id,
5050 0x5766fee9e74442e8,
5051 fidl::encoding::DynamicFlags::empty(),
5052 )
5053 }
5054}
5055
5056#[must_use = "FIDL methods require a response to be sent"]
5057#[derive(Debug)]
5058pub struct EchoEchoTablePayloadResponder {
5059 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5060 tx_id: u32,
5061}
5062
5063impl std::ops::Drop for EchoEchoTablePayloadResponder {
5067 fn drop(&mut self) {
5068 self.control_handle.shutdown();
5069 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5071 }
5072}
5073
5074impl fidl::endpoints::Responder for EchoEchoTablePayloadResponder {
5075 type ControlHandle = EchoControlHandle;
5076
5077 fn control_handle(&self) -> &EchoControlHandle {
5078 &self.control_handle
5079 }
5080
5081 fn drop_without_shutdown(mut self) {
5082 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5084 std::mem::forget(self);
5086 }
5087}
5088
5089impl EchoEchoTablePayloadResponder {
5090 pub fn send(self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5094 let _result = self.send_raw(payload);
5095 if _result.is_err() {
5096 self.control_handle.shutdown();
5097 }
5098 self.drop_without_shutdown();
5099 _result
5100 }
5101
5102 pub fn send_no_shutdown_on_err(self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5104 let _result = self.send_raw(payload);
5105 self.drop_without_shutdown();
5106 _result
5107 }
5108
5109 fn send_raw(&self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5110 self.control_handle.inner.send::<ResponseTable>(
5111 payload,
5112 self.tx_id,
5113 0x641d98087378c003,
5114 fidl::encoding::DynamicFlags::empty(),
5115 )
5116 }
5117}
5118
5119#[must_use = "FIDL methods require a response to be sent"]
5120#[derive(Debug)]
5121pub struct EchoEchoTablePayloadWithErrorResponder {
5122 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5123 tx_id: u32,
5124}
5125
5126impl std::ops::Drop for EchoEchoTablePayloadWithErrorResponder {
5130 fn drop(&mut self) {
5131 self.control_handle.shutdown();
5132 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5134 }
5135}
5136
5137impl fidl::endpoints::Responder for EchoEchoTablePayloadWithErrorResponder {
5138 type ControlHandle = EchoControlHandle;
5139
5140 fn control_handle(&self) -> &EchoControlHandle {
5141 &self.control_handle
5142 }
5143
5144 fn drop_without_shutdown(mut self) {
5145 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5147 std::mem::forget(self);
5149 }
5150}
5151
5152impl EchoEchoTablePayloadWithErrorResponder {
5153 pub fn send(self, mut result: Result<&ResponseTable, DefaultEnum>) -> Result<(), fidl::Error> {
5157 let _result = self.send_raw(result);
5158 if _result.is_err() {
5159 self.control_handle.shutdown();
5160 }
5161 self.drop_without_shutdown();
5162 _result
5163 }
5164
5165 pub fn send_no_shutdown_on_err(
5167 self,
5168 mut result: Result<&ResponseTable, DefaultEnum>,
5169 ) -> Result<(), fidl::Error> {
5170 let _result = self.send_raw(result);
5171 self.drop_without_shutdown();
5172 _result
5173 }
5174
5175 fn send_raw(&self, mut result: Result<&ResponseTable, DefaultEnum>) -> Result<(), fidl::Error> {
5176 self.control_handle.inner.send::<fidl::encoding::ResultType<ResponseTable, DefaultEnum>>(
5177 result,
5178 self.tx_id,
5179 0x636ed243761ab66d,
5180 fidl::encoding::DynamicFlags::empty(),
5181 )
5182 }
5183}
5184
5185#[must_use = "FIDL methods require a response to be sent"]
5186#[derive(Debug)]
5187pub struct EchoEchoUnionPayloadResponder {
5188 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5189 tx_id: u32,
5190}
5191
5192impl std::ops::Drop for EchoEchoUnionPayloadResponder {
5196 fn drop(&mut self) {
5197 self.control_handle.shutdown();
5198 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5200 }
5201}
5202
5203impl fidl::endpoints::Responder for EchoEchoUnionPayloadResponder {
5204 type ControlHandle = EchoControlHandle;
5205
5206 fn control_handle(&self) -> &EchoControlHandle {
5207 &self.control_handle
5208 }
5209
5210 fn drop_without_shutdown(mut self) {
5211 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5213 std::mem::forget(self);
5215 }
5216}
5217
5218impl EchoEchoUnionPayloadResponder {
5219 pub fn send(self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5223 let _result = self.send_raw(payload);
5224 if _result.is_err() {
5225 self.control_handle.shutdown();
5226 }
5227 self.drop_without_shutdown();
5228 _result
5229 }
5230
5231 pub fn send_no_shutdown_on_err(self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5233 let _result = self.send_raw(payload);
5234 self.drop_without_shutdown();
5235 _result
5236 }
5237
5238 fn send_raw(&self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5239 self.control_handle.inner.send::<ResponseUnion>(
5240 payload,
5241 self.tx_id,
5242 0x66def9e793f10c55,
5243 fidl::encoding::DynamicFlags::empty(),
5244 )
5245 }
5246}
5247
5248#[must_use = "FIDL methods require a response to be sent"]
5249#[derive(Debug)]
5250pub struct EchoEchoUnionPayloadWithErrorResponder {
5251 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5252 tx_id: u32,
5253}
5254
5255impl std::ops::Drop for EchoEchoUnionPayloadWithErrorResponder {
5259 fn drop(&mut self) {
5260 self.control_handle.shutdown();
5261 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5263 }
5264}
5265
5266impl fidl::endpoints::Responder for EchoEchoUnionPayloadWithErrorResponder {
5267 type ControlHandle = EchoControlHandle;
5268
5269 fn control_handle(&self) -> &EchoControlHandle {
5270 &self.control_handle
5271 }
5272
5273 fn drop_without_shutdown(mut self) {
5274 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5276 std::mem::forget(self);
5278 }
5279}
5280
5281impl EchoEchoUnionPayloadWithErrorResponder {
5282 pub fn send(self, mut result: Result<&ResponseUnion, DefaultEnum>) -> Result<(), fidl::Error> {
5286 let _result = self.send_raw(result);
5287 if _result.is_err() {
5288 self.control_handle.shutdown();
5289 }
5290 self.drop_without_shutdown();
5291 _result
5292 }
5293
5294 pub fn send_no_shutdown_on_err(
5296 self,
5297 mut result: Result<&ResponseUnion, DefaultEnum>,
5298 ) -> Result<(), fidl::Error> {
5299 let _result = self.send_raw(result);
5300 self.drop_without_shutdown();
5301 _result
5302 }
5303
5304 fn send_raw(&self, mut result: Result<&ResponseUnion, DefaultEnum>) -> Result<(), fidl::Error> {
5305 self.control_handle.inner.send::<fidl::encoding::ResultType<ResponseUnion, DefaultEnum>>(
5306 result,
5307 self.tx_id,
5308 0x1be890d6e68ef063,
5309 fidl::encoding::DynamicFlags::empty(),
5310 )
5311 }
5312}
5313
5314mod internal {
5315 use super::*;
5316
5317 impl fidl::encoding::ResourceTypeMarker for ArraysStruct {
5318 type Borrowed<'a> = &'a mut Self;
5319 fn take_or_borrow<'a>(
5320 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5321 ) -> Self::Borrowed<'a> {
5322 value
5323 }
5324 }
5325
5326 unsafe impl fidl::encoding::TypeMarker for ArraysStruct {
5327 type Owned = Self;
5328
5329 #[inline(always)]
5330 fn inline_align(_context: fidl::encoding::Context) -> usize {
5331 8
5332 }
5333
5334 #[inline(always)]
5335 fn inline_size(_context: fidl::encoding::Context) -> usize {
5336 680
5337 }
5338 }
5339
5340 unsafe impl fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
5341 for &mut ArraysStruct
5342 {
5343 #[inline]
5344 unsafe fn encode(
5345 self,
5346 encoder: &mut fidl::encoding::Encoder<
5347 '_,
5348 fidl::encoding::DefaultFuchsiaResourceDialect,
5349 >,
5350 offset: usize,
5351 _depth: fidl::encoding::Depth,
5352 ) -> fidl::Result<()> {
5353 encoder.debug_check_bounds::<ArraysStruct>(offset);
5354 fidl::encoding::Encode::<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
5356 (
5357 <fidl::encoding::Array<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bools),
5358 <fidl::encoding::Array<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int8s),
5359 <fidl::encoding::Array<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int16s),
5360 <fidl::encoding::Array<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int32s),
5361 <fidl::encoding::Array<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int64s),
5362 <fidl::encoding::Array<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint8s),
5363 <fidl::encoding::Array<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint16s),
5364 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint32s),
5365 <fidl::encoding::Array<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint64s),
5366 <fidl::encoding::Array<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float32s),
5367 <fidl::encoding::Array<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float64s),
5368 <fidl::encoding::Array<DefaultEnum, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.enums),
5369 <fidl::encoding::Array<DefaultBits, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bits),
5370 <fidl::encoding::Array<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handles),
5371 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.nullable_handles),
5372 <fidl::encoding::Array<fidl::encoding::UnboundedString, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
5373 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_strings),
5374 <fidl::encoding::Array<ThisIsAStruct, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
5375 <fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_structs),
5376 <fidl::encoding::Array<ThisIsAUnion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
5377 <fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_unions),
5378 <fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.arrays),
5379 <fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.vectors),
5380 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_vectors),
5381 <fidl::encoding::Array<ThisIsATable, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.tables),
5382 <fidl::encoding::Array<ThisIsAXunion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.xunions),
5383 ),
5384 encoder, offset, _depth
5385 )
5386 }
5387 }
5388 unsafe impl<
5389 T0: fidl::encoding::Encode<
5390 fidl::encoding::Array<bool, 3>,
5391 fidl::encoding::DefaultFuchsiaResourceDialect,
5392 >,
5393 T1: fidl::encoding::Encode<
5394 fidl::encoding::Array<i8, 3>,
5395 fidl::encoding::DefaultFuchsiaResourceDialect,
5396 >,
5397 T2: fidl::encoding::Encode<
5398 fidl::encoding::Array<i16, 3>,
5399 fidl::encoding::DefaultFuchsiaResourceDialect,
5400 >,
5401 T3: fidl::encoding::Encode<
5402 fidl::encoding::Array<i32, 3>,
5403 fidl::encoding::DefaultFuchsiaResourceDialect,
5404 >,
5405 T4: fidl::encoding::Encode<
5406 fidl::encoding::Array<i64, 3>,
5407 fidl::encoding::DefaultFuchsiaResourceDialect,
5408 >,
5409 T5: fidl::encoding::Encode<
5410 fidl::encoding::Array<u8, 3>,
5411 fidl::encoding::DefaultFuchsiaResourceDialect,
5412 >,
5413 T6: fidl::encoding::Encode<
5414 fidl::encoding::Array<u16, 3>,
5415 fidl::encoding::DefaultFuchsiaResourceDialect,
5416 >,
5417 T7: fidl::encoding::Encode<
5418 fidl::encoding::Array<u32, 3>,
5419 fidl::encoding::DefaultFuchsiaResourceDialect,
5420 >,
5421 T8: fidl::encoding::Encode<
5422 fidl::encoding::Array<u64, 3>,
5423 fidl::encoding::DefaultFuchsiaResourceDialect,
5424 >,
5425 T9: fidl::encoding::Encode<
5426 fidl::encoding::Array<f32, 3>,
5427 fidl::encoding::DefaultFuchsiaResourceDialect,
5428 >,
5429 T10: fidl::encoding::Encode<
5430 fidl::encoding::Array<f64, 3>,
5431 fidl::encoding::DefaultFuchsiaResourceDialect,
5432 >,
5433 T11: fidl::encoding::Encode<
5434 fidl::encoding::Array<DefaultEnum, 3>,
5435 fidl::encoding::DefaultFuchsiaResourceDialect,
5436 >,
5437 T12: fidl::encoding::Encode<
5438 fidl::encoding::Array<DefaultBits, 3>,
5439 fidl::encoding::DefaultFuchsiaResourceDialect,
5440 >,
5441 T13: fidl::encoding::Encode<
5442 fidl::encoding::Array<
5443 fidl::encoding::HandleType<
5444 fidl::NullableHandle,
5445 { fidl::ObjectType::NONE.into_raw() },
5446 2147483648,
5447 >,
5448 3,
5449 >,
5450 fidl::encoding::DefaultFuchsiaResourceDialect,
5451 >,
5452 T14: fidl::encoding::Encode<
5453 fidl::encoding::Array<
5454 fidl::encoding::Optional<
5455 fidl::encoding::HandleType<
5456 fidl::NullableHandle,
5457 { fidl::ObjectType::NONE.into_raw() },
5458 2147483648,
5459 >,
5460 >,
5461 3,
5462 >,
5463 fidl::encoding::DefaultFuchsiaResourceDialect,
5464 >,
5465 T15: fidl::encoding::Encode<
5466 fidl::encoding::Array<fidl::encoding::UnboundedString, 3>,
5467 fidl::encoding::DefaultFuchsiaResourceDialect,
5468 >,
5469 T16: fidl::encoding::Encode<
5470 fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3>,
5471 fidl::encoding::DefaultFuchsiaResourceDialect,
5472 >,
5473 T17: fidl::encoding::Encode<
5474 fidl::encoding::Array<ThisIsAStruct, 3>,
5475 fidl::encoding::DefaultFuchsiaResourceDialect,
5476 >,
5477 T18: fidl::encoding::Encode<
5478 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5479 fidl::encoding::DefaultFuchsiaResourceDialect,
5480 >,
5481 T19: fidl::encoding::Encode<
5482 fidl::encoding::Array<ThisIsAUnion, 3>,
5483 fidl::encoding::DefaultFuchsiaResourceDialect,
5484 >,
5485 T20: fidl::encoding::Encode<
5486 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5487 fidl::encoding::DefaultFuchsiaResourceDialect,
5488 >,
5489 T21: fidl::encoding::Encode<
5490 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5491 fidl::encoding::DefaultFuchsiaResourceDialect,
5492 >,
5493 T22: fidl::encoding::Encode<
5494 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5495 fidl::encoding::DefaultFuchsiaResourceDialect,
5496 >,
5497 T23: fidl::encoding::Encode<
5498 fidl::encoding::Array<
5499 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5500 3,
5501 >,
5502 fidl::encoding::DefaultFuchsiaResourceDialect,
5503 >,
5504 T24: fidl::encoding::Encode<
5505 fidl::encoding::Array<ThisIsATable, 3>,
5506 fidl::encoding::DefaultFuchsiaResourceDialect,
5507 >,
5508 T25: fidl::encoding::Encode<
5509 fidl::encoding::Array<ThisIsAXunion, 3>,
5510 fidl::encoding::DefaultFuchsiaResourceDialect,
5511 >,
5512 > fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
5513 for (
5514 T0,
5515 T1,
5516 T2,
5517 T3,
5518 T4,
5519 T5,
5520 T6,
5521 T7,
5522 T8,
5523 T9,
5524 T10,
5525 T11,
5526 T12,
5527 T13,
5528 T14,
5529 T15,
5530 T16,
5531 T17,
5532 T18,
5533 T19,
5534 T20,
5535 T21,
5536 T22,
5537 T23,
5538 T24,
5539 T25,
5540 )
5541 {
5542 #[inline]
5543 unsafe fn encode(
5544 self,
5545 encoder: &mut fidl::encoding::Encoder<
5546 '_,
5547 fidl::encoding::DefaultFuchsiaResourceDialect,
5548 >,
5549 offset: usize,
5550 depth: fidl::encoding::Depth,
5551 ) -> fidl::Result<()> {
5552 encoder.debug_check_bounds::<ArraysStruct>(offset);
5553 unsafe {
5556 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(48);
5557 (ptr as *mut u64).write_unaligned(0);
5558 }
5559 unsafe {
5560 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(56);
5561 (ptr as *mut u64).write_unaligned(0);
5562 }
5563 unsafe {
5564 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(104);
5565 (ptr as *mut u64).write_unaligned(0);
5566 }
5567 unsafe {
5568 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(480);
5569 (ptr as *mut u64).write_unaligned(0);
5570 }
5571 self.0.encode(encoder, offset + 0, depth)?;
5573 self.1.encode(encoder, offset + 3, depth)?;
5574 self.2.encode(encoder, offset + 6, depth)?;
5575 self.3.encode(encoder, offset + 12, depth)?;
5576 self.4.encode(encoder, offset + 24, depth)?;
5577 self.5.encode(encoder, offset + 48, depth)?;
5578 self.6.encode(encoder, offset + 52, depth)?;
5579 self.7.encode(encoder, offset + 60, depth)?;
5580 self.8.encode(encoder, offset + 72, depth)?;
5581 self.9.encode(encoder, offset + 96, depth)?;
5582 self.10.encode(encoder, offset + 112, depth)?;
5583 self.11.encode(encoder, offset + 136, depth)?;
5584 self.12.encode(encoder, offset + 148, depth)?;
5585 self.13.encode(encoder, offset + 160, depth)?;
5586 self.14.encode(encoder, offset + 172, depth)?;
5587 self.15.encode(encoder, offset + 184, depth)?;
5588 self.16.encode(encoder, offset + 232, depth)?;
5589 self.17.encode(encoder, offset + 280, depth)?;
5590 self.18.encode(encoder, offset + 328, depth)?;
5591 self.19.encode(encoder, offset + 352, depth)?;
5592 self.20.encode(encoder, offset + 400, depth)?;
5593 self.21.encode(encoder, offset + 448, depth)?;
5594 self.22.encode(encoder, offset + 488, depth)?;
5595 self.23.encode(encoder, offset + 536, depth)?;
5596 self.24.encode(encoder, offset + 584, depth)?;
5597 self.25.encode(encoder, offset + 632, depth)?;
5598 Ok(())
5599 }
5600 }
5601
5602 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for ArraysStruct {
5603 #[inline(always)]
5604 fn new_empty() -> Self {
5605 Self {
5606 bools: fidl::new_empty!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5607 int8s: fidl::new_empty!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5608 int16s: fidl::new_empty!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5609 int32s: fidl::new_empty!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5610 int64s: fidl::new_empty!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5611 uint8s: fidl::new_empty!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5612 uint16s: fidl::new_empty!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5613 uint32s: fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5614 uint64s: fidl::new_empty!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5615 float32s: fidl::new_empty!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5616 float64s: fidl::new_empty!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5617 enums: fidl::new_empty!(fidl::encoding::Array<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5618 bits: fidl::new_empty!(fidl::encoding::Array<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5619 handles: fidl::new_empty!(
5620 fidl::encoding::Array<
5621 fidl::encoding::HandleType<
5622 fidl::NullableHandle,
5623 { fidl::ObjectType::NONE.into_raw() },
5624 2147483648,
5625 >,
5626 3,
5627 >,
5628 fidl::encoding::DefaultFuchsiaResourceDialect
5629 ),
5630 nullable_handles: fidl::new_empty!(
5631 fidl::encoding::Array<
5632 fidl::encoding::Optional<
5633 fidl::encoding::HandleType<
5634 fidl::NullableHandle,
5635 { fidl::ObjectType::NONE.into_raw() },
5636 2147483648,
5637 >,
5638 >,
5639 3,
5640 >,
5641 fidl::encoding::DefaultFuchsiaResourceDialect
5642 ),
5643 strings: fidl::new_empty!(fidl::encoding::Array<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5644 nullable_strings: fidl::new_empty!(
5645 fidl::encoding::Array<
5646 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
5647 3,
5648 >,
5649 fidl::encoding::DefaultFuchsiaResourceDialect
5650 ),
5651 structs: fidl::new_empty!(fidl::encoding::Array<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5652 nullable_structs: fidl::new_empty!(
5653 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5654 fidl::encoding::DefaultFuchsiaResourceDialect
5655 ),
5656 unions: fidl::new_empty!(fidl::encoding::Array<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5657 nullable_unions: fidl::new_empty!(
5658 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5659 fidl::encoding::DefaultFuchsiaResourceDialect
5660 ),
5661 arrays: fidl::new_empty!(
5662 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5663 fidl::encoding::DefaultFuchsiaResourceDialect
5664 ),
5665 vectors: fidl::new_empty!(
5666 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5667 fidl::encoding::DefaultFuchsiaResourceDialect
5668 ),
5669 nullable_vectors: fidl::new_empty!(
5670 fidl::encoding::Array<
5671 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5672 3,
5673 >,
5674 fidl::encoding::DefaultFuchsiaResourceDialect
5675 ),
5676 tables: fidl::new_empty!(fidl::encoding::Array<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5677 xunions: fidl::new_empty!(fidl::encoding::Array<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5678 }
5679 }
5680
5681 #[inline]
5682 unsafe fn decode(
5683 &mut self,
5684 decoder: &mut fidl::encoding::Decoder<
5685 '_,
5686 fidl::encoding::DefaultFuchsiaResourceDialect,
5687 >,
5688 offset: usize,
5689 _depth: fidl::encoding::Depth,
5690 ) -> fidl::Result<()> {
5691 decoder.debug_check_bounds::<Self>(offset);
5692 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(48) };
5694 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5695 let mask = 0xff000000u64;
5696 let maskedval = padval & mask;
5697 if maskedval != 0 {
5698 return Err(fidl::Error::NonZeroPadding {
5699 padding_start: offset + 48 + ((mask as u64).trailing_zeros() / 8) as usize,
5700 });
5701 }
5702 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(56) };
5703 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5704 let mask = 0xffff0000u64;
5705 let maskedval = padval & mask;
5706 if maskedval != 0 {
5707 return Err(fidl::Error::NonZeroPadding {
5708 padding_start: offset + 56 + ((mask as u64).trailing_zeros() / 8) as usize,
5709 });
5710 }
5711 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(104) };
5712 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5713 let mask = 0xffffffff00000000u64;
5714 let maskedval = padval & mask;
5715 if maskedval != 0 {
5716 return Err(fidl::Error::NonZeroPadding {
5717 padding_start: offset + 104 + ((mask as u64).trailing_zeros() / 8) as usize,
5718 });
5719 }
5720 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(480) };
5721 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5722 let mask = 0xffffffff00000000u64;
5723 let maskedval = padval & mask;
5724 if maskedval != 0 {
5725 return Err(fidl::Error::NonZeroPadding {
5726 padding_start: offset + 480 + ((mask as u64).trailing_zeros() / 8) as usize,
5727 });
5728 }
5729 fidl::decode!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bools, decoder, offset + 0, _depth)?;
5730 fidl::decode!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int8s, decoder, offset + 3, _depth)?;
5731 fidl::decode!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int16s, decoder, offset + 6, _depth)?;
5732 fidl::decode!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int32s, decoder, offset + 12, _depth)?;
5733 fidl::decode!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int64s, decoder, offset + 24, _depth)?;
5734 fidl::decode!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint8s, decoder, offset + 48, _depth)?;
5735 fidl::decode!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint16s, decoder, offset + 52, _depth)?;
5736 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint32s, decoder, offset + 60, _depth)?;
5737 fidl::decode!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint64s, decoder, offset + 72, _depth)?;
5738 fidl::decode!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float32s, decoder, offset + 96, _depth)?;
5739 fidl::decode!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float64s, decoder, offset + 112, _depth)?;
5740 fidl::decode!(fidl::encoding::Array<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.enums, decoder, offset + 136, _depth)?;
5741 fidl::decode!(fidl::encoding::Array<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bits, decoder, offset + 148, _depth)?;
5742 fidl::decode!(
5743 fidl::encoding::Array<
5744 fidl::encoding::HandleType<
5745 fidl::NullableHandle,
5746 { fidl::ObjectType::NONE.into_raw() },
5747 2147483648,
5748 >,
5749 3,
5750 >,
5751 fidl::encoding::DefaultFuchsiaResourceDialect,
5752 &mut self.handles,
5753 decoder,
5754 offset + 160,
5755 _depth
5756 )?;
5757 fidl::decode!(
5758 fidl::encoding::Array<
5759 fidl::encoding::Optional<
5760 fidl::encoding::HandleType<
5761 fidl::NullableHandle,
5762 { fidl::ObjectType::NONE.into_raw() },
5763 2147483648,
5764 >,
5765 >,
5766 3,
5767 >,
5768 fidl::encoding::DefaultFuchsiaResourceDialect,
5769 &mut self.nullable_handles,
5770 decoder,
5771 offset + 172,
5772 _depth
5773 )?;
5774 fidl::decode!(fidl::encoding::Array<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.strings, decoder, offset + 184, _depth)?;
5775 fidl::decode!(
5776 fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3>,
5777 fidl::encoding::DefaultFuchsiaResourceDialect,
5778 &mut self.nullable_strings,
5779 decoder,
5780 offset + 232,
5781 _depth
5782 )?;
5783 fidl::decode!(fidl::encoding::Array<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.structs, decoder, offset + 280, _depth)?;
5784 fidl::decode!(
5785 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5786 fidl::encoding::DefaultFuchsiaResourceDialect,
5787 &mut self.nullable_structs,
5788 decoder,
5789 offset + 328,
5790 _depth
5791 )?;
5792 fidl::decode!(fidl::encoding::Array<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.unions, decoder, offset + 352, _depth)?;
5793 fidl::decode!(
5794 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5795 fidl::encoding::DefaultFuchsiaResourceDialect,
5796 &mut self.nullable_unions,
5797 decoder,
5798 offset + 400,
5799 _depth
5800 )?;
5801 fidl::decode!(
5802 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5803 fidl::encoding::DefaultFuchsiaResourceDialect,
5804 &mut self.arrays,
5805 decoder,
5806 offset + 448,
5807 _depth
5808 )?;
5809 fidl::decode!(
5810 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5811 fidl::encoding::DefaultFuchsiaResourceDialect,
5812 &mut self.vectors,
5813 decoder,
5814 offset + 488,
5815 _depth
5816 )?;
5817 fidl::decode!(
5818 fidl::encoding::Array<
5819 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5820 3,
5821 >,
5822 fidl::encoding::DefaultFuchsiaResourceDialect,
5823 &mut self.nullable_vectors,
5824 decoder,
5825 offset + 536,
5826 _depth
5827 )?;
5828 fidl::decode!(fidl::encoding::Array<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.tables, decoder, offset + 584, _depth)?;
5829 fidl::decode!(fidl::encoding::Array<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.xunions, decoder, offset + 632, _depth)?;
5830 Ok(())
5831 }
5832 }
5833
5834 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysRequest {
5835 type Borrowed<'a> = &'a mut Self;
5836 fn take_or_borrow<'a>(
5837 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5838 ) -> Self::Borrowed<'a> {
5839 value
5840 }
5841 }
5842
5843 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysRequest {
5844 type Owned = Self;
5845
5846 #[inline(always)]
5847 fn inline_align(_context: fidl::encoding::Context) -> usize {
5848 8
5849 }
5850
5851 #[inline(always)]
5852 fn inline_size(_context: fidl::encoding::Context) -> usize {
5853 696
5854 }
5855 }
5856
5857 unsafe impl
5858 fidl::encoding::Encode<EchoEchoArraysRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
5859 for &mut EchoEchoArraysRequest
5860 {
5861 #[inline]
5862 unsafe fn encode(
5863 self,
5864 encoder: &mut fidl::encoding::Encoder<
5865 '_,
5866 fidl::encoding::DefaultFuchsiaResourceDialect,
5867 >,
5868 offset: usize,
5869 _depth: fidl::encoding::Depth,
5870 ) -> fidl::Result<()> {
5871 encoder.debug_check_bounds::<EchoEchoArraysRequest>(offset);
5872 fidl::encoding::Encode::<
5874 EchoEchoArraysRequest,
5875 fidl::encoding::DefaultFuchsiaResourceDialect,
5876 >::encode(
5877 (
5878 <ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
5879 &mut self.value,
5880 ),
5881 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
5882 &self.forward_to_server,
5883 ),
5884 ),
5885 encoder,
5886 offset,
5887 _depth,
5888 )
5889 }
5890 }
5891 unsafe impl<
5892 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
5893 T1: fidl::encoding::Encode<
5894 fidl::encoding::UnboundedString,
5895 fidl::encoding::DefaultFuchsiaResourceDialect,
5896 >,
5897 >
5898 fidl::encoding::Encode<EchoEchoArraysRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
5899 for (T0, T1)
5900 {
5901 #[inline]
5902 unsafe fn encode(
5903 self,
5904 encoder: &mut fidl::encoding::Encoder<
5905 '_,
5906 fidl::encoding::DefaultFuchsiaResourceDialect,
5907 >,
5908 offset: usize,
5909 depth: fidl::encoding::Depth,
5910 ) -> fidl::Result<()> {
5911 encoder.debug_check_bounds::<EchoEchoArraysRequest>(offset);
5912 self.0.encode(encoder, offset + 0, depth)?;
5916 self.1.encode(encoder, offset + 680, depth)?;
5917 Ok(())
5918 }
5919 }
5920
5921 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
5922 for EchoEchoArraysRequest
5923 {
5924 #[inline(always)]
5925 fn new_empty() -> Self {
5926 Self {
5927 value: fidl::new_empty!(
5928 ArraysStruct,
5929 fidl::encoding::DefaultFuchsiaResourceDialect
5930 ),
5931 forward_to_server: fidl::new_empty!(
5932 fidl::encoding::UnboundedString,
5933 fidl::encoding::DefaultFuchsiaResourceDialect
5934 ),
5935 }
5936 }
5937
5938 #[inline]
5939 unsafe fn decode(
5940 &mut self,
5941 decoder: &mut fidl::encoding::Decoder<
5942 '_,
5943 fidl::encoding::DefaultFuchsiaResourceDialect,
5944 >,
5945 offset: usize,
5946 _depth: fidl::encoding::Depth,
5947 ) -> fidl::Result<()> {
5948 decoder.debug_check_bounds::<Self>(offset);
5949 fidl::decode!(
5951 ArraysStruct,
5952 fidl::encoding::DefaultFuchsiaResourceDialect,
5953 &mut self.value,
5954 decoder,
5955 offset + 0,
5956 _depth
5957 )?;
5958 fidl::decode!(
5959 fidl::encoding::UnboundedString,
5960 fidl::encoding::DefaultFuchsiaResourceDialect,
5961 &mut self.forward_to_server,
5962 decoder,
5963 offset + 680,
5964 _depth
5965 )?;
5966 Ok(())
5967 }
5968 }
5969
5970 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysResponse {
5971 type Borrowed<'a> = &'a mut Self;
5972 fn take_or_borrow<'a>(
5973 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5974 ) -> Self::Borrowed<'a> {
5975 value
5976 }
5977 }
5978
5979 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysResponse {
5980 type Owned = Self;
5981
5982 #[inline(always)]
5983 fn inline_align(_context: fidl::encoding::Context) -> usize {
5984 8
5985 }
5986
5987 #[inline(always)]
5988 fn inline_size(_context: fidl::encoding::Context) -> usize {
5989 680
5990 }
5991 }
5992
5993 unsafe impl
5994 fidl::encoding::Encode<
5995 EchoEchoArraysResponse,
5996 fidl::encoding::DefaultFuchsiaResourceDialect,
5997 > for &mut EchoEchoArraysResponse
5998 {
5999 #[inline]
6000 unsafe fn encode(
6001 self,
6002 encoder: &mut fidl::encoding::Encoder<
6003 '_,
6004 fidl::encoding::DefaultFuchsiaResourceDialect,
6005 >,
6006 offset: usize,
6007 _depth: fidl::encoding::Depth,
6008 ) -> fidl::Result<()> {
6009 encoder.debug_check_bounds::<EchoEchoArraysResponse>(offset);
6010 fidl::encoding::Encode::<
6012 EchoEchoArraysResponse,
6013 fidl::encoding::DefaultFuchsiaResourceDialect,
6014 >::encode(
6015 (<ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6016 &mut self.value,
6017 ),),
6018 encoder,
6019 offset,
6020 _depth,
6021 )
6022 }
6023 }
6024 unsafe impl<
6025 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6026 >
6027 fidl::encoding::Encode<
6028 EchoEchoArraysResponse,
6029 fidl::encoding::DefaultFuchsiaResourceDialect,
6030 > for (T0,)
6031 {
6032 #[inline]
6033 unsafe fn encode(
6034 self,
6035 encoder: &mut fidl::encoding::Encoder<
6036 '_,
6037 fidl::encoding::DefaultFuchsiaResourceDialect,
6038 >,
6039 offset: usize,
6040 depth: fidl::encoding::Depth,
6041 ) -> fidl::Result<()> {
6042 encoder.debug_check_bounds::<EchoEchoArraysResponse>(offset);
6043 self.0.encode(encoder, offset + 0, depth)?;
6047 Ok(())
6048 }
6049 }
6050
6051 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6052 for EchoEchoArraysResponse
6053 {
6054 #[inline(always)]
6055 fn new_empty() -> Self {
6056 Self {
6057 value: fidl::new_empty!(
6058 ArraysStruct,
6059 fidl::encoding::DefaultFuchsiaResourceDialect
6060 ),
6061 }
6062 }
6063
6064 #[inline]
6065 unsafe fn decode(
6066 &mut self,
6067 decoder: &mut fidl::encoding::Decoder<
6068 '_,
6069 fidl::encoding::DefaultFuchsiaResourceDialect,
6070 >,
6071 offset: usize,
6072 _depth: fidl::encoding::Depth,
6073 ) -> fidl::Result<()> {
6074 decoder.debug_check_bounds::<Self>(offset);
6075 fidl::decode!(
6077 ArraysStruct,
6078 fidl::encoding::DefaultFuchsiaResourceDialect,
6079 &mut self.value,
6080 decoder,
6081 offset + 0,
6082 _depth
6083 )?;
6084 Ok(())
6085 }
6086 }
6087
6088 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysWithErrorRequest {
6089 type Borrowed<'a> = &'a mut Self;
6090 fn take_or_borrow<'a>(
6091 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6092 ) -> Self::Borrowed<'a> {
6093 value
6094 }
6095 }
6096
6097 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysWithErrorRequest {
6098 type Owned = Self;
6099
6100 #[inline(always)]
6101 fn inline_align(_context: fidl::encoding::Context) -> usize {
6102 8
6103 }
6104
6105 #[inline(always)]
6106 fn inline_size(_context: fidl::encoding::Context) -> usize {
6107 712
6108 }
6109 }
6110
6111 unsafe impl
6112 fidl::encoding::Encode<
6113 EchoEchoArraysWithErrorRequest,
6114 fidl::encoding::DefaultFuchsiaResourceDialect,
6115 > for &mut EchoEchoArraysWithErrorRequest
6116 {
6117 #[inline]
6118 unsafe fn encode(
6119 self,
6120 encoder: &mut fidl::encoding::Encoder<
6121 '_,
6122 fidl::encoding::DefaultFuchsiaResourceDialect,
6123 >,
6124 offset: usize,
6125 _depth: fidl::encoding::Depth,
6126 ) -> fidl::Result<()> {
6127 encoder.debug_check_bounds::<EchoEchoArraysWithErrorRequest>(offset);
6128 fidl::encoding::Encode::<
6130 EchoEchoArraysWithErrorRequest,
6131 fidl::encoding::DefaultFuchsiaResourceDialect,
6132 >::encode(
6133 (
6134 <ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6135 &mut self.value,
6136 ),
6137 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
6138 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6139 &self.forward_to_server,
6140 ),
6141 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
6142 ),
6143 encoder,
6144 offset,
6145 _depth,
6146 )
6147 }
6148 }
6149 unsafe impl<
6150 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6151 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
6152 T2: fidl::encoding::Encode<
6153 fidl::encoding::UnboundedString,
6154 fidl::encoding::DefaultFuchsiaResourceDialect,
6155 >,
6156 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
6157 >
6158 fidl::encoding::Encode<
6159 EchoEchoArraysWithErrorRequest,
6160 fidl::encoding::DefaultFuchsiaResourceDialect,
6161 > for (T0, T1, T2, T3)
6162 {
6163 #[inline]
6164 unsafe fn encode(
6165 self,
6166 encoder: &mut fidl::encoding::Encoder<
6167 '_,
6168 fidl::encoding::DefaultFuchsiaResourceDialect,
6169 >,
6170 offset: usize,
6171 depth: fidl::encoding::Depth,
6172 ) -> fidl::Result<()> {
6173 encoder.debug_check_bounds::<EchoEchoArraysWithErrorRequest>(offset);
6174 unsafe {
6177 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(680);
6178 (ptr as *mut u64).write_unaligned(0);
6179 }
6180 unsafe {
6181 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(704);
6182 (ptr as *mut u64).write_unaligned(0);
6183 }
6184 self.0.encode(encoder, offset + 0, depth)?;
6186 self.1.encode(encoder, offset + 680, depth)?;
6187 self.2.encode(encoder, offset + 688, depth)?;
6188 self.3.encode(encoder, offset + 704, depth)?;
6189 Ok(())
6190 }
6191 }
6192
6193 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6194 for EchoEchoArraysWithErrorRequest
6195 {
6196 #[inline(always)]
6197 fn new_empty() -> Self {
6198 Self {
6199 value: fidl::new_empty!(
6200 ArraysStruct,
6201 fidl::encoding::DefaultFuchsiaResourceDialect
6202 ),
6203 result_err: fidl::new_empty!(
6204 DefaultEnum,
6205 fidl::encoding::DefaultFuchsiaResourceDialect
6206 ),
6207 forward_to_server: fidl::new_empty!(
6208 fidl::encoding::UnboundedString,
6209 fidl::encoding::DefaultFuchsiaResourceDialect
6210 ),
6211 result_variant: fidl::new_empty!(
6212 RespondWith,
6213 fidl::encoding::DefaultFuchsiaResourceDialect
6214 ),
6215 }
6216 }
6217
6218 #[inline]
6219 unsafe fn decode(
6220 &mut self,
6221 decoder: &mut fidl::encoding::Decoder<
6222 '_,
6223 fidl::encoding::DefaultFuchsiaResourceDialect,
6224 >,
6225 offset: usize,
6226 _depth: fidl::encoding::Depth,
6227 ) -> fidl::Result<()> {
6228 decoder.debug_check_bounds::<Self>(offset);
6229 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(680) };
6231 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6232 let mask = 0xffffffff00000000u64;
6233 let maskedval = padval & mask;
6234 if maskedval != 0 {
6235 return Err(fidl::Error::NonZeroPadding {
6236 padding_start: offset + 680 + ((mask as u64).trailing_zeros() / 8) as usize,
6237 });
6238 }
6239 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(704) };
6240 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6241 let mask = 0xffffffff00000000u64;
6242 let maskedval = padval & mask;
6243 if maskedval != 0 {
6244 return Err(fidl::Error::NonZeroPadding {
6245 padding_start: offset + 704 + ((mask as u64).trailing_zeros() / 8) as usize,
6246 });
6247 }
6248 fidl::decode!(
6249 ArraysStruct,
6250 fidl::encoding::DefaultFuchsiaResourceDialect,
6251 &mut self.value,
6252 decoder,
6253 offset + 0,
6254 _depth
6255 )?;
6256 fidl::decode!(
6257 DefaultEnum,
6258 fidl::encoding::DefaultFuchsiaResourceDialect,
6259 &mut self.result_err,
6260 decoder,
6261 offset + 680,
6262 _depth
6263 )?;
6264 fidl::decode!(
6265 fidl::encoding::UnboundedString,
6266 fidl::encoding::DefaultFuchsiaResourceDialect,
6267 &mut self.forward_to_server,
6268 decoder,
6269 offset + 688,
6270 _depth
6271 )?;
6272 fidl::decode!(
6273 RespondWith,
6274 fidl::encoding::DefaultFuchsiaResourceDialect,
6275 &mut self.result_variant,
6276 decoder,
6277 offset + 704,
6278 _depth
6279 )?;
6280 Ok(())
6281 }
6282 }
6283
6284 impl fidl::encoding::ResourceTypeMarker for EchoEchoEventRequest {
6285 type Borrowed<'a> = &'a mut Self;
6286 fn take_or_borrow<'a>(
6287 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6288 ) -> Self::Borrowed<'a> {
6289 value
6290 }
6291 }
6292
6293 unsafe impl fidl::encoding::TypeMarker for EchoEchoEventRequest {
6294 type Owned = Self;
6295
6296 #[inline(always)]
6297 fn inline_align(_context: fidl::encoding::Context) -> usize {
6298 8
6299 }
6300
6301 #[inline(always)]
6302 fn inline_size(_context: fidl::encoding::Context) -> usize {
6303 2912
6304 }
6305 }
6306
6307 unsafe impl
6308 fidl::encoding::Encode<EchoEchoEventRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6309 for &mut EchoEchoEventRequest
6310 {
6311 #[inline]
6312 unsafe fn encode(
6313 self,
6314 encoder: &mut fidl::encoding::Encoder<
6315 '_,
6316 fidl::encoding::DefaultFuchsiaResourceDialect,
6317 >,
6318 offset: usize,
6319 _depth: fidl::encoding::Depth,
6320 ) -> fidl::Result<()> {
6321 encoder.debug_check_bounds::<EchoEchoEventRequest>(offset);
6322 fidl::encoding::Encode::<
6324 EchoEchoEventRequest,
6325 fidl::encoding::DefaultFuchsiaResourceDialect,
6326 >::encode(
6327 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
6328 encoder,
6329 offset,
6330 _depth,
6331 )
6332 }
6333 }
6334 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
6335 fidl::encoding::Encode<EchoEchoEventRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6336 for (T0,)
6337 {
6338 #[inline]
6339 unsafe fn encode(
6340 self,
6341 encoder: &mut fidl::encoding::Encoder<
6342 '_,
6343 fidl::encoding::DefaultFuchsiaResourceDialect,
6344 >,
6345 offset: usize,
6346 depth: fidl::encoding::Depth,
6347 ) -> fidl::Result<()> {
6348 encoder.debug_check_bounds::<EchoEchoEventRequest>(offset);
6349 self.0.encode(encoder, offset + 0, depth)?;
6353 Ok(())
6354 }
6355 }
6356
6357 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6358 for EchoEchoEventRequest
6359 {
6360 #[inline(always)]
6361 fn new_empty() -> Self {
6362 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
6363 }
6364
6365 #[inline]
6366 unsafe fn decode(
6367 &mut self,
6368 decoder: &mut fidl::encoding::Decoder<
6369 '_,
6370 fidl::encoding::DefaultFuchsiaResourceDialect,
6371 >,
6372 offset: usize,
6373 _depth: fidl::encoding::Depth,
6374 ) -> fidl::Result<()> {
6375 decoder.debug_check_bounds::<Self>(offset);
6376 fidl::decode!(
6378 Struct,
6379 fidl::encoding::DefaultFuchsiaResourceDialect,
6380 &mut self.value,
6381 decoder,
6382 offset + 0,
6383 _depth
6384 )?;
6385 Ok(())
6386 }
6387 }
6388
6389 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructNoRetValRequest {
6390 type Borrowed<'a> = &'a mut Self;
6391 fn take_or_borrow<'a>(
6392 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6393 ) -> Self::Borrowed<'a> {
6394 value
6395 }
6396 }
6397
6398 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructNoRetValRequest {
6399 type Owned = Self;
6400
6401 #[inline(always)]
6402 fn inline_align(_context: fidl::encoding::Context) -> usize {
6403 8
6404 }
6405
6406 #[inline(always)]
6407 fn inline_size(_context: fidl::encoding::Context) -> usize {
6408 2928
6409 }
6410 }
6411
6412 unsafe impl
6413 fidl::encoding::Encode<
6414 EchoEchoStructNoRetValRequest,
6415 fidl::encoding::DefaultFuchsiaResourceDialect,
6416 > for &mut EchoEchoStructNoRetValRequest
6417 {
6418 #[inline]
6419 unsafe fn encode(
6420 self,
6421 encoder: &mut fidl::encoding::Encoder<
6422 '_,
6423 fidl::encoding::DefaultFuchsiaResourceDialect,
6424 >,
6425 offset: usize,
6426 _depth: fidl::encoding::Depth,
6427 ) -> fidl::Result<()> {
6428 encoder.debug_check_bounds::<EchoEchoStructNoRetValRequest>(offset);
6429 fidl::encoding::Encode::<
6431 EchoEchoStructNoRetValRequest,
6432 fidl::encoding::DefaultFuchsiaResourceDialect,
6433 >::encode(
6434 (
6435 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6436 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6437 &self.forward_to_server,
6438 ),
6439 ),
6440 encoder,
6441 offset,
6442 _depth,
6443 )
6444 }
6445 }
6446 unsafe impl<
6447 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6448 T1: fidl::encoding::Encode<
6449 fidl::encoding::UnboundedString,
6450 fidl::encoding::DefaultFuchsiaResourceDialect,
6451 >,
6452 >
6453 fidl::encoding::Encode<
6454 EchoEchoStructNoRetValRequest,
6455 fidl::encoding::DefaultFuchsiaResourceDialect,
6456 > for (T0, T1)
6457 {
6458 #[inline]
6459 unsafe fn encode(
6460 self,
6461 encoder: &mut fidl::encoding::Encoder<
6462 '_,
6463 fidl::encoding::DefaultFuchsiaResourceDialect,
6464 >,
6465 offset: usize,
6466 depth: fidl::encoding::Depth,
6467 ) -> fidl::Result<()> {
6468 encoder.debug_check_bounds::<EchoEchoStructNoRetValRequest>(offset);
6469 self.0.encode(encoder, offset + 0, depth)?;
6473 self.1.encode(encoder, offset + 2912, depth)?;
6474 Ok(())
6475 }
6476 }
6477
6478 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6479 for EchoEchoStructNoRetValRequest
6480 {
6481 #[inline(always)]
6482 fn new_empty() -> Self {
6483 Self {
6484 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6485 forward_to_server: fidl::new_empty!(
6486 fidl::encoding::UnboundedString,
6487 fidl::encoding::DefaultFuchsiaResourceDialect
6488 ),
6489 }
6490 }
6491
6492 #[inline]
6493 unsafe fn decode(
6494 &mut self,
6495 decoder: &mut fidl::encoding::Decoder<
6496 '_,
6497 fidl::encoding::DefaultFuchsiaResourceDialect,
6498 >,
6499 offset: usize,
6500 _depth: fidl::encoding::Depth,
6501 ) -> fidl::Result<()> {
6502 decoder.debug_check_bounds::<Self>(offset);
6503 fidl::decode!(
6505 Struct,
6506 fidl::encoding::DefaultFuchsiaResourceDialect,
6507 &mut self.value,
6508 decoder,
6509 offset + 0,
6510 _depth
6511 )?;
6512 fidl::decode!(
6513 fidl::encoding::UnboundedString,
6514 fidl::encoding::DefaultFuchsiaResourceDialect,
6515 &mut self.forward_to_server,
6516 decoder,
6517 offset + 2912,
6518 _depth
6519 )?;
6520 Ok(())
6521 }
6522 }
6523
6524 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructRequest {
6525 type Borrowed<'a> = &'a mut Self;
6526 fn take_or_borrow<'a>(
6527 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6528 ) -> Self::Borrowed<'a> {
6529 value
6530 }
6531 }
6532
6533 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructRequest {
6534 type Owned = Self;
6535
6536 #[inline(always)]
6537 fn inline_align(_context: fidl::encoding::Context) -> usize {
6538 8
6539 }
6540
6541 #[inline(always)]
6542 fn inline_size(_context: fidl::encoding::Context) -> usize {
6543 2928
6544 }
6545 }
6546
6547 unsafe impl
6548 fidl::encoding::Encode<EchoEchoStructRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6549 for &mut EchoEchoStructRequest
6550 {
6551 #[inline]
6552 unsafe fn encode(
6553 self,
6554 encoder: &mut fidl::encoding::Encoder<
6555 '_,
6556 fidl::encoding::DefaultFuchsiaResourceDialect,
6557 >,
6558 offset: usize,
6559 _depth: fidl::encoding::Depth,
6560 ) -> fidl::Result<()> {
6561 encoder.debug_check_bounds::<EchoEchoStructRequest>(offset);
6562 fidl::encoding::Encode::<
6564 EchoEchoStructRequest,
6565 fidl::encoding::DefaultFuchsiaResourceDialect,
6566 >::encode(
6567 (
6568 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6569 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6570 &self.forward_to_server,
6571 ),
6572 ),
6573 encoder,
6574 offset,
6575 _depth,
6576 )
6577 }
6578 }
6579 unsafe impl<
6580 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6581 T1: fidl::encoding::Encode<
6582 fidl::encoding::UnboundedString,
6583 fidl::encoding::DefaultFuchsiaResourceDialect,
6584 >,
6585 >
6586 fidl::encoding::Encode<EchoEchoStructRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6587 for (T0, T1)
6588 {
6589 #[inline]
6590 unsafe fn encode(
6591 self,
6592 encoder: &mut fidl::encoding::Encoder<
6593 '_,
6594 fidl::encoding::DefaultFuchsiaResourceDialect,
6595 >,
6596 offset: usize,
6597 depth: fidl::encoding::Depth,
6598 ) -> fidl::Result<()> {
6599 encoder.debug_check_bounds::<EchoEchoStructRequest>(offset);
6600 self.0.encode(encoder, offset + 0, depth)?;
6604 self.1.encode(encoder, offset + 2912, depth)?;
6605 Ok(())
6606 }
6607 }
6608
6609 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6610 for EchoEchoStructRequest
6611 {
6612 #[inline(always)]
6613 fn new_empty() -> Self {
6614 Self {
6615 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6616 forward_to_server: fidl::new_empty!(
6617 fidl::encoding::UnboundedString,
6618 fidl::encoding::DefaultFuchsiaResourceDialect
6619 ),
6620 }
6621 }
6622
6623 #[inline]
6624 unsafe fn decode(
6625 &mut self,
6626 decoder: &mut fidl::encoding::Decoder<
6627 '_,
6628 fidl::encoding::DefaultFuchsiaResourceDialect,
6629 >,
6630 offset: usize,
6631 _depth: fidl::encoding::Depth,
6632 ) -> fidl::Result<()> {
6633 decoder.debug_check_bounds::<Self>(offset);
6634 fidl::decode!(
6636 Struct,
6637 fidl::encoding::DefaultFuchsiaResourceDialect,
6638 &mut self.value,
6639 decoder,
6640 offset + 0,
6641 _depth
6642 )?;
6643 fidl::decode!(
6644 fidl::encoding::UnboundedString,
6645 fidl::encoding::DefaultFuchsiaResourceDialect,
6646 &mut self.forward_to_server,
6647 decoder,
6648 offset + 2912,
6649 _depth
6650 )?;
6651 Ok(())
6652 }
6653 }
6654
6655 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructResponse {
6656 type Borrowed<'a> = &'a mut Self;
6657 fn take_or_borrow<'a>(
6658 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6659 ) -> Self::Borrowed<'a> {
6660 value
6661 }
6662 }
6663
6664 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructResponse {
6665 type Owned = Self;
6666
6667 #[inline(always)]
6668 fn inline_align(_context: fidl::encoding::Context) -> usize {
6669 8
6670 }
6671
6672 #[inline(always)]
6673 fn inline_size(_context: fidl::encoding::Context) -> usize {
6674 2912
6675 }
6676 }
6677
6678 unsafe impl
6679 fidl::encoding::Encode<
6680 EchoEchoStructResponse,
6681 fidl::encoding::DefaultFuchsiaResourceDialect,
6682 > for &mut EchoEchoStructResponse
6683 {
6684 #[inline]
6685 unsafe fn encode(
6686 self,
6687 encoder: &mut fidl::encoding::Encoder<
6688 '_,
6689 fidl::encoding::DefaultFuchsiaResourceDialect,
6690 >,
6691 offset: usize,
6692 _depth: fidl::encoding::Depth,
6693 ) -> fidl::Result<()> {
6694 encoder.debug_check_bounds::<EchoEchoStructResponse>(offset);
6695 fidl::encoding::Encode::<
6697 EchoEchoStructResponse,
6698 fidl::encoding::DefaultFuchsiaResourceDialect,
6699 >::encode(
6700 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
6701 encoder,
6702 offset,
6703 _depth,
6704 )
6705 }
6706 }
6707 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
6708 fidl::encoding::Encode<
6709 EchoEchoStructResponse,
6710 fidl::encoding::DefaultFuchsiaResourceDialect,
6711 > for (T0,)
6712 {
6713 #[inline]
6714 unsafe fn encode(
6715 self,
6716 encoder: &mut fidl::encoding::Encoder<
6717 '_,
6718 fidl::encoding::DefaultFuchsiaResourceDialect,
6719 >,
6720 offset: usize,
6721 depth: fidl::encoding::Depth,
6722 ) -> fidl::Result<()> {
6723 encoder.debug_check_bounds::<EchoEchoStructResponse>(offset);
6724 self.0.encode(encoder, offset + 0, depth)?;
6728 Ok(())
6729 }
6730 }
6731
6732 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6733 for EchoEchoStructResponse
6734 {
6735 #[inline(always)]
6736 fn new_empty() -> Self {
6737 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
6738 }
6739
6740 #[inline]
6741 unsafe fn decode(
6742 &mut self,
6743 decoder: &mut fidl::encoding::Decoder<
6744 '_,
6745 fidl::encoding::DefaultFuchsiaResourceDialect,
6746 >,
6747 offset: usize,
6748 _depth: fidl::encoding::Depth,
6749 ) -> fidl::Result<()> {
6750 decoder.debug_check_bounds::<Self>(offset);
6751 fidl::decode!(
6753 Struct,
6754 fidl::encoding::DefaultFuchsiaResourceDialect,
6755 &mut self.value,
6756 decoder,
6757 offset + 0,
6758 _depth
6759 )?;
6760 Ok(())
6761 }
6762 }
6763
6764 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructWithErrorRequest {
6765 type Borrowed<'a> = &'a mut Self;
6766 fn take_or_borrow<'a>(
6767 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6768 ) -> Self::Borrowed<'a> {
6769 value
6770 }
6771 }
6772
6773 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructWithErrorRequest {
6774 type Owned = Self;
6775
6776 #[inline(always)]
6777 fn inline_align(_context: fidl::encoding::Context) -> usize {
6778 8
6779 }
6780
6781 #[inline(always)]
6782 fn inline_size(_context: fidl::encoding::Context) -> usize {
6783 2944
6784 }
6785 }
6786
6787 unsafe impl
6788 fidl::encoding::Encode<
6789 EchoEchoStructWithErrorRequest,
6790 fidl::encoding::DefaultFuchsiaResourceDialect,
6791 > for &mut EchoEchoStructWithErrorRequest
6792 {
6793 #[inline]
6794 unsafe fn encode(
6795 self,
6796 encoder: &mut fidl::encoding::Encoder<
6797 '_,
6798 fidl::encoding::DefaultFuchsiaResourceDialect,
6799 >,
6800 offset: usize,
6801 _depth: fidl::encoding::Depth,
6802 ) -> fidl::Result<()> {
6803 encoder.debug_check_bounds::<EchoEchoStructWithErrorRequest>(offset);
6804 fidl::encoding::Encode::<
6806 EchoEchoStructWithErrorRequest,
6807 fidl::encoding::DefaultFuchsiaResourceDialect,
6808 >::encode(
6809 (
6810 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6811 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
6812 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6813 &self.forward_to_server,
6814 ),
6815 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
6816 ),
6817 encoder,
6818 offset,
6819 _depth,
6820 )
6821 }
6822 }
6823 unsafe impl<
6824 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6825 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
6826 T2: fidl::encoding::Encode<
6827 fidl::encoding::UnboundedString,
6828 fidl::encoding::DefaultFuchsiaResourceDialect,
6829 >,
6830 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
6831 >
6832 fidl::encoding::Encode<
6833 EchoEchoStructWithErrorRequest,
6834 fidl::encoding::DefaultFuchsiaResourceDialect,
6835 > for (T0, T1, T2, T3)
6836 {
6837 #[inline]
6838 unsafe fn encode(
6839 self,
6840 encoder: &mut fidl::encoding::Encoder<
6841 '_,
6842 fidl::encoding::DefaultFuchsiaResourceDialect,
6843 >,
6844 offset: usize,
6845 depth: fidl::encoding::Depth,
6846 ) -> fidl::Result<()> {
6847 encoder.debug_check_bounds::<EchoEchoStructWithErrorRequest>(offset);
6848 unsafe {
6851 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2912);
6852 (ptr as *mut u64).write_unaligned(0);
6853 }
6854 unsafe {
6855 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2936);
6856 (ptr as *mut u64).write_unaligned(0);
6857 }
6858 self.0.encode(encoder, offset + 0, depth)?;
6860 self.1.encode(encoder, offset + 2912, depth)?;
6861 self.2.encode(encoder, offset + 2920, depth)?;
6862 self.3.encode(encoder, offset + 2936, depth)?;
6863 Ok(())
6864 }
6865 }
6866
6867 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6868 for EchoEchoStructWithErrorRequest
6869 {
6870 #[inline(always)]
6871 fn new_empty() -> Self {
6872 Self {
6873 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6874 result_err: fidl::new_empty!(
6875 DefaultEnum,
6876 fidl::encoding::DefaultFuchsiaResourceDialect
6877 ),
6878 forward_to_server: fidl::new_empty!(
6879 fidl::encoding::UnboundedString,
6880 fidl::encoding::DefaultFuchsiaResourceDialect
6881 ),
6882 result_variant: fidl::new_empty!(
6883 RespondWith,
6884 fidl::encoding::DefaultFuchsiaResourceDialect
6885 ),
6886 }
6887 }
6888
6889 #[inline]
6890 unsafe fn decode(
6891 &mut self,
6892 decoder: &mut fidl::encoding::Decoder<
6893 '_,
6894 fidl::encoding::DefaultFuchsiaResourceDialect,
6895 >,
6896 offset: usize,
6897 _depth: fidl::encoding::Depth,
6898 ) -> fidl::Result<()> {
6899 decoder.debug_check_bounds::<Self>(offset);
6900 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2912) };
6902 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6903 let mask = 0xffffffff00000000u64;
6904 let maskedval = padval & mask;
6905 if maskedval != 0 {
6906 return Err(fidl::Error::NonZeroPadding {
6907 padding_start: offset + 2912 + ((mask as u64).trailing_zeros() / 8) as usize,
6908 });
6909 }
6910 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2936) };
6911 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6912 let mask = 0xffffffff00000000u64;
6913 let maskedval = padval & mask;
6914 if maskedval != 0 {
6915 return Err(fidl::Error::NonZeroPadding {
6916 padding_start: offset + 2936 + ((mask as u64).trailing_zeros() / 8) as usize,
6917 });
6918 }
6919 fidl::decode!(
6920 Struct,
6921 fidl::encoding::DefaultFuchsiaResourceDialect,
6922 &mut self.value,
6923 decoder,
6924 offset + 0,
6925 _depth
6926 )?;
6927 fidl::decode!(
6928 DefaultEnum,
6929 fidl::encoding::DefaultFuchsiaResourceDialect,
6930 &mut self.result_err,
6931 decoder,
6932 offset + 2912,
6933 _depth
6934 )?;
6935 fidl::decode!(
6936 fidl::encoding::UnboundedString,
6937 fidl::encoding::DefaultFuchsiaResourceDialect,
6938 &mut self.forward_to_server,
6939 decoder,
6940 offset + 2920,
6941 _depth
6942 )?;
6943 fidl::decode!(
6944 RespondWith,
6945 fidl::encoding::DefaultFuchsiaResourceDialect,
6946 &mut self.result_variant,
6947 decoder,
6948 offset + 2936,
6949 _depth
6950 )?;
6951 Ok(())
6952 }
6953 }
6954
6955 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableRequest {
6956 type Borrowed<'a> = &'a mut Self;
6957 fn take_or_borrow<'a>(
6958 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6959 ) -> Self::Borrowed<'a> {
6960 value
6961 }
6962 }
6963
6964 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableRequest {
6965 type Owned = Self;
6966
6967 #[inline(always)]
6968 fn inline_align(_context: fidl::encoding::Context) -> usize {
6969 8
6970 }
6971
6972 #[inline(always)]
6973 fn inline_size(_context: fidl::encoding::Context) -> usize {
6974 32
6975 }
6976 }
6977
6978 unsafe impl
6979 fidl::encoding::Encode<EchoEchoTableRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6980 for &mut EchoEchoTableRequest
6981 {
6982 #[inline]
6983 unsafe fn encode(
6984 self,
6985 encoder: &mut fidl::encoding::Encoder<
6986 '_,
6987 fidl::encoding::DefaultFuchsiaResourceDialect,
6988 >,
6989 offset: usize,
6990 _depth: fidl::encoding::Depth,
6991 ) -> fidl::Result<()> {
6992 encoder.debug_check_bounds::<EchoEchoTableRequest>(offset);
6993 fidl::encoding::Encode::<
6995 EchoEchoTableRequest,
6996 fidl::encoding::DefaultFuchsiaResourceDialect,
6997 >::encode(
6998 (
6999 <AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7000 &mut self.value,
7001 ),
7002 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7003 &self.forward_to_server,
7004 ),
7005 ),
7006 encoder,
7007 offset,
7008 _depth,
7009 )
7010 }
7011 }
7012 unsafe impl<
7013 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7014 T1: fidl::encoding::Encode<
7015 fidl::encoding::UnboundedString,
7016 fidl::encoding::DefaultFuchsiaResourceDialect,
7017 >,
7018 >
7019 fidl::encoding::Encode<EchoEchoTableRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
7020 for (T0, T1)
7021 {
7022 #[inline]
7023 unsafe fn encode(
7024 self,
7025 encoder: &mut fidl::encoding::Encoder<
7026 '_,
7027 fidl::encoding::DefaultFuchsiaResourceDialect,
7028 >,
7029 offset: usize,
7030 depth: fidl::encoding::Depth,
7031 ) -> fidl::Result<()> {
7032 encoder.debug_check_bounds::<EchoEchoTableRequest>(offset);
7033 self.0.encode(encoder, offset + 0, depth)?;
7037 self.1.encode(encoder, offset + 16, depth)?;
7038 Ok(())
7039 }
7040 }
7041
7042 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7043 for EchoEchoTableRequest
7044 {
7045 #[inline(always)]
7046 fn new_empty() -> Self {
7047 Self {
7048 value: fidl::new_empty!(
7049 AllTypesTable,
7050 fidl::encoding::DefaultFuchsiaResourceDialect
7051 ),
7052 forward_to_server: fidl::new_empty!(
7053 fidl::encoding::UnboundedString,
7054 fidl::encoding::DefaultFuchsiaResourceDialect
7055 ),
7056 }
7057 }
7058
7059 #[inline]
7060 unsafe fn decode(
7061 &mut self,
7062 decoder: &mut fidl::encoding::Decoder<
7063 '_,
7064 fidl::encoding::DefaultFuchsiaResourceDialect,
7065 >,
7066 offset: usize,
7067 _depth: fidl::encoding::Depth,
7068 ) -> fidl::Result<()> {
7069 decoder.debug_check_bounds::<Self>(offset);
7070 fidl::decode!(
7072 AllTypesTable,
7073 fidl::encoding::DefaultFuchsiaResourceDialect,
7074 &mut self.value,
7075 decoder,
7076 offset + 0,
7077 _depth
7078 )?;
7079 fidl::decode!(
7080 fidl::encoding::UnboundedString,
7081 fidl::encoding::DefaultFuchsiaResourceDialect,
7082 &mut self.forward_to_server,
7083 decoder,
7084 offset + 16,
7085 _depth
7086 )?;
7087 Ok(())
7088 }
7089 }
7090
7091 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableResponse {
7092 type Borrowed<'a> = &'a mut Self;
7093 fn take_or_borrow<'a>(
7094 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7095 ) -> Self::Borrowed<'a> {
7096 value
7097 }
7098 }
7099
7100 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableResponse {
7101 type Owned = Self;
7102
7103 #[inline(always)]
7104 fn inline_align(_context: fidl::encoding::Context) -> usize {
7105 8
7106 }
7107
7108 #[inline(always)]
7109 fn inline_size(_context: fidl::encoding::Context) -> usize {
7110 16
7111 }
7112 }
7113
7114 unsafe impl
7115 fidl::encoding::Encode<EchoEchoTableResponse, fidl::encoding::DefaultFuchsiaResourceDialect>
7116 for &mut EchoEchoTableResponse
7117 {
7118 #[inline]
7119 unsafe fn encode(
7120 self,
7121 encoder: &mut fidl::encoding::Encoder<
7122 '_,
7123 fidl::encoding::DefaultFuchsiaResourceDialect,
7124 >,
7125 offset: usize,
7126 _depth: fidl::encoding::Depth,
7127 ) -> fidl::Result<()> {
7128 encoder.debug_check_bounds::<EchoEchoTableResponse>(offset);
7129 fidl::encoding::Encode::<
7131 EchoEchoTableResponse,
7132 fidl::encoding::DefaultFuchsiaResourceDialect,
7133 >::encode(
7134 (<AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7135 &mut self.value,
7136 ),),
7137 encoder,
7138 offset,
7139 _depth,
7140 )
7141 }
7142 }
7143 unsafe impl<
7144 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7145 >
7146 fidl::encoding::Encode<EchoEchoTableResponse, fidl::encoding::DefaultFuchsiaResourceDialect>
7147 for (T0,)
7148 {
7149 #[inline]
7150 unsafe fn encode(
7151 self,
7152 encoder: &mut fidl::encoding::Encoder<
7153 '_,
7154 fidl::encoding::DefaultFuchsiaResourceDialect,
7155 >,
7156 offset: usize,
7157 depth: fidl::encoding::Depth,
7158 ) -> fidl::Result<()> {
7159 encoder.debug_check_bounds::<EchoEchoTableResponse>(offset);
7160 self.0.encode(encoder, offset + 0, depth)?;
7164 Ok(())
7165 }
7166 }
7167
7168 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7169 for EchoEchoTableResponse
7170 {
7171 #[inline(always)]
7172 fn new_empty() -> Self {
7173 Self {
7174 value: fidl::new_empty!(
7175 AllTypesTable,
7176 fidl::encoding::DefaultFuchsiaResourceDialect
7177 ),
7178 }
7179 }
7180
7181 #[inline]
7182 unsafe fn decode(
7183 &mut self,
7184 decoder: &mut fidl::encoding::Decoder<
7185 '_,
7186 fidl::encoding::DefaultFuchsiaResourceDialect,
7187 >,
7188 offset: usize,
7189 _depth: fidl::encoding::Depth,
7190 ) -> fidl::Result<()> {
7191 decoder.debug_check_bounds::<Self>(offset);
7192 fidl::decode!(
7194 AllTypesTable,
7195 fidl::encoding::DefaultFuchsiaResourceDialect,
7196 &mut self.value,
7197 decoder,
7198 offset + 0,
7199 _depth
7200 )?;
7201 Ok(())
7202 }
7203 }
7204
7205 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableWithErrorRequest {
7206 type Borrowed<'a> = &'a mut Self;
7207 fn take_or_borrow<'a>(
7208 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7209 ) -> Self::Borrowed<'a> {
7210 value
7211 }
7212 }
7213
7214 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableWithErrorRequest {
7215 type Owned = Self;
7216
7217 #[inline(always)]
7218 fn inline_align(_context: fidl::encoding::Context) -> usize {
7219 8
7220 }
7221
7222 #[inline(always)]
7223 fn inline_size(_context: fidl::encoding::Context) -> usize {
7224 48
7225 }
7226 }
7227
7228 unsafe impl
7229 fidl::encoding::Encode<
7230 EchoEchoTableWithErrorRequest,
7231 fidl::encoding::DefaultFuchsiaResourceDialect,
7232 > for &mut EchoEchoTableWithErrorRequest
7233 {
7234 #[inline]
7235 unsafe fn encode(
7236 self,
7237 encoder: &mut fidl::encoding::Encoder<
7238 '_,
7239 fidl::encoding::DefaultFuchsiaResourceDialect,
7240 >,
7241 offset: usize,
7242 _depth: fidl::encoding::Depth,
7243 ) -> fidl::Result<()> {
7244 encoder.debug_check_bounds::<EchoEchoTableWithErrorRequest>(offset);
7245 fidl::encoding::Encode::<
7247 EchoEchoTableWithErrorRequest,
7248 fidl::encoding::DefaultFuchsiaResourceDialect,
7249 >::encode(
7250 (
7251 <AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7252 &mut self.value,
7253 ),
7254 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
7255 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7256 &self.forward_to_server,
7257 ),
7258 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
7259 ),
7260 encoder,
7261 offset,
7262 _depth,
7263 )
7264 }
7265 }
7266 unsafe impl<
7267 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7268 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
7269 T2: fidl::encoding::Encode<
7270 fidl::encoding::UnboundedString,
7271 fidl::encoding::DefaultFuchsiaResourceDialect,
7272 >,
7273 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
7274 >
7275 fidl::encoding::Encode<
7276 EchoEchoTableWithErrorRequest,
7277 fidl::encoding::DefaultFuchsiaResourceDialect,
7278 > for (T0, T1, T2, T3)
7279 {
7280 #[inline]
7281 unsafe fn encode(
7282 self,
7283 encoder: &mut fidl::encoding::Encoder<
7284 '_,
7285 fidl::encoding::DefaultFuchsiaResourceDialect,
7286 >,
7287 offset: usize,
7288 depth: fidl::encoding::Depth,
7289 ) -> fidl::Result<()> {
7290 encoder.debug_check_bounds::<EchoEchoTableWithErrorRequest>(offset);
7291 unsafe {
7294 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
7295 (ptr as *mut u64).write_unaligned(0);
7296 }
7297 unsafe {
7298 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(40);
7299 (ptr as *mut u64).write_unaligned(0);
7300 }
7301 self.0.encode(encoder, offset + 0, depth)?;
7303 self.1.encode(encoder, offset + 16, depth)?;
7304 self.2.encode(encoder, offset + 24, depth)?;
7305 self.3.encode(encoder, offset + 40, depth)?;
7306 Ok(())
7307 }
7308 }
7309
7310 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7311 for EchoEchoTableWithErrorRequest
7312 {
7313 #[inline(always)]
7314 fn new_empty() -> Self {
7315 Self {
7316 value: fidl::new_empty!(
7317 AllTypesTable,
7318 fidl::encoding::DefaultFuchsiaResourceDialect
7319 ),
7320 result_err: fidl::new_empty!(
7321 DefaultEnum,
7322 fidl::encoding::DefaultFuchsiaResourceDialect
7323 ),
7324 forward_to_server: fidl::new_empty!(
7325 fidl::encoding::UnboundedString,
7326 fidl::encoding::DefaultFuchsiaResourceDialect
7327 ),
7328 result_variant: fidl::new_empty!(
7329 RespondWith,
7330 fidl::encoding::DefaultFuchsiaResourceDialect
7331 ),
7332 }
7333 }
7334
7335 #[inline]
7336 unsafe fn decode(
7337 &mut self,
7338 decoder: &mut fidl::encoding::Decoder<
7339 '_,
7340 fidl::encoding::DefaultFuchsiaResourceDialect,
7341 >,
7342 offset: usize,
7343 _depth: fidl::encoding::Depth,
7344 ) -> fidl::Result<()> {
7345 decoder.debug_check_bounds::<Self>(offset);
7346 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
7348 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7349 let mask = 0xffffffff00000000u64;
7350 let maskedval = padval & mask;
7351 if maskedval != 0 {
7352 return Err(fidl::Error::NonZeroPadding {
7353 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
7354 });
7355 }
7356 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(40) };
7357 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7358 let mask = 0xffffffff00000000u64;
7359 let maskedval = padval & mask;
7360 if maskedval != 0 {
7361 return Err(fidl::Error::NonZeroPadding {
7362 padding_start: offset + 40 + ((mask as u64).trailing_zeros() / 8) as usize,
7363 });
7364 }
7365 fidl::decode!(
7366 AllTypesTable,
7367 fidl::encoding::DefaultFuchsiaResourceDialect,
7368 &mut self.value,
7369 decoder,
7370 offset + 0,
7371 _depth
7372 )?;
7373 fidl::decode!(
7374 DefaultEnum,
7375 fidl::encoding::DefaultFuchsiaResourceDialect,
7376 &mut self.result_err,
7377 decoder,
7378 offset + 16,
7379 _depth
7380 )?;
7381 fidl::decode!(
7382 fidl::encoding::UnboundedString,
7383 fidl::encoding::DefaultFuchsiaResourceDialect,
7384 &mut self.forward_to_server,
7385 decoder,
7386 offset + 24,
7387 _depth
7388 )?;
7389 fidl::decode!(
7390 RespondWith,
7391 fidl::encoding::DefaultFuchsiaResourceDialect,
7392 &mut self.result_variant,
7393 decoder,
7394 offset + 40,
7395 _depth
7396 )?;
7397 Ok(())
7398 }
7399 }
7400
7401 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsRequest {
7402 type Borrowed<'a> = &'a mut Self;
7403 fn take_or_borrow<'a>(
7404 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7405 ) -> Self::Borrowed<'a> {
7406 value
7407 }
7408 }
7409
7410 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsRequest {
7411 type Owned = Self;
7412
7413 #[inline(always)]
7414 fn inline_align(_context: fidl::encoding::Context) -> usize {
7415 8
7416 }
7417
7418 #[inline(always)]
7419 fn inline_size(_context: fidl::encoding::Context) -> usize {
7420 432
7421 }
7422 }
7423
7424 unsafe impl
7425 fidl::encoding::Encode<
7426 EchoEchoVectorsRequest,
7427 fidl::encoding::DefaultFuchsiaResourceDialect,
7428 > for &mut EchoEchoVectorsRequest
7429 {
7430 #[inline]
7431 unsafe fn encode(
7432 self,
7433 encoder: &mut fidl::encoding::Encoder<
7434 '_,
7435 fidl::encoding::DefaultFuchsiaResourceDialect,
7436 >,
7437 offset: usize,
7438 _depth: fidl::encoding::Depth,
7439 ) -> fidl::Result<()> {
7440 encoder.debug_check_bounds::<EchoEchoVectorsRequest>(offset);
7441 fidl::encoding::Encode::<
7443 EchoEchoVectorsRequest,
7444 fidl::encoding::DefaultFuchsiaResourceDialect,
7445 >::encode(
7446 (
7447 <VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7448 &mut self.value,
7449 ),
7450 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7451 &self.forward_to_server,
7452 ),
7453 ),
7454 encoder,
7455 offset,
7456 _depth,
7457 )
7458 }
7459 }
7460 unsafe impl<
7461 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7462 T1: fidl::encoding::Encode<
7463 fidl::encoding::UnboundedString,
7464 fidl::encoding::DefaultFuchsiaResourceDialect,
7465 >,
7466 >
7467 fidl::encoding::Encode<
7468 EchoEchoVectorsRequest,
7469 fidl::encoding::DefaultFuchsiaResourceDialect,
7470 > for (T0, T1)
7471 {
7472 #[inline]
7473 unsafe fn encode(
7474 self,
7475 encoder: &mut fidl::encoding::Encoder<
7476 '_,
7477 fidl::encoding::DefaultFuchsiaResourceDialect,
7478 >,
7479 offset: usize,
7480 depth: fidl::encoding::Depth,
7481 ) -> fidl::Result<()> {
7482 encoder.debug_check_bounds::<EchoEchoVectorsRequest>(offset);
7483 self.0.encode(encoder, offset + 0, depth)?;
7487 self.1.encode(encoder, offset + 416, depth)?;
7488 Ok(())
7489 }
7490 }
7491
7492 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7493 for EchoEchoVectorsRequest
7494 {
7495 #[inline(always)]
7496 fn new_empty() -> Self {
7497 Self {
7498 value: fidl::new_empty!(
7499 VectorsStruct,
7500 fidl::encoding::DefaultFuchsiaResourceDialect
7501 ),
7502 forward_to_server: fidl::new_empty!(
7503 fidl::encoding::UnboundedString,
7504 fidl::encoding::DefaultFuchsiaResourceDialect
7505 ),
7506 }
7507 }
7508
7509 #[inline]
7510 unsafe fn decode(
7511 &mut self,
7512 decoder: &mut fidl::encoding::Decoder<
7513 '_,
7514 fidl::encoding::DefaultFuchsiaResourceDialect,
7515 >,
7516 offset: usize,
7517 _depth: fidl::encoding::Depth,
7518 ) -> fidl::Result<()> {
7519 decoder.debug_check_bounds::<Self>(offset);
7520 fidl::decode!(
7522 VectorsStruct,
7523 fidl::encoding::DefaultFuchsiaResourceDialect,
7524 &mut self.value,
7525 decoder,
7526 offset + 0,
7527 _depth
7528 )?;
7529 fidl::decode!(
7530 fidl::encoding::UnboundedString,
7531 fidl::encoding::DefaultFuchsiaResourceDialect,
7532 &mut self.forward_to_server,
7533 decoder,
7534 offset + 416,
7535 _depth
7536 )?;
7537 Ok(())
7538 }
7539 }
7540
7541 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsResponse {
7542 type Borrowed<'a> = &'a mut Self;
7543 fn take_or_borrow<'a>(
7544 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7545 ) -> Self::Borrowed<'a> {
7546 value
7547 }
7548 }
7549
7550 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsResponse {
7551 type Owned = Self;
7552
7553 #[inline(always)]
7554 fn inline_align(_context: fidl::encoding::Context) -> usize {
7555 8
7556 }
7557
7558 #[inline(always)]
7559 fn inline_size(_context: fidl::encoding::Context) -> usize {
7560 416
7561 }
7562 }
7563
7564 unsafe impl
7565 fidl::encoding::Encode<
7566 EchoEchoVectorsResponse,
7567 fidl::encoding::DefaultFuchsiaResourceDialect,
7568 > for &mut EchoEchoVectorsResponse
7569 {
7570 #[inline]
7571 unsafe fn encode(
7572 self,
7573 encoder: &mut fidl::encoding::Encoder<
7574 '_,
7575 fidl::encoding::DefaultFuchsiaResourceDialect,
7576 >,
7577 offset: usize,
7578 _depth: fidl::encoding::Depth,
7579 ) -> fidl::Result<()> {
7580 encoder.debug_check_bounds::<EchoEchoVectorsResponse>(offset);
7581 fidl::encoding::Encode::<
7583 EchoEchoVectorsResponse,
7584 fidl::encoding::DefaultFuchsiaResourceDialect,
7585 >::encode(
7586 (<VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7587 &mut self.value,
7588 ),),
7589 encoder,
7590 offset,
7591 _depth,
7592 )
7593 }
7594 }
7595 unsafe impl<
7596 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7597 >
7598 fidl::encoding::Encode<
7599 EchoEchoVectorsResponse,
7600 fidl::encoding::DefaultFuchsiaResourceDialect,
7601 > for (T0,)
7602 {
7603 #[inline]
7604 unsafe fn encode(
7605 self,
7606 encoder: &mut fidl::encoding::Encoder<
7607 '_,
7608 fidl::encoding::DefaultFuchsiaResourceDialect,
7609 >,
7610 offset: usize,
7611 depth: fidl::encoding::Depth,
7612 ) -> fidl::Result<()> {
7613 encoder.debug_check_bounds::<EchoEchoVectorsResponse>(offset);
7614 self.0.encode(encoder, offset + 0, depth)?;
7618 Ok(())
7619 }
7620 }
7621
7622 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7623 for EchoEchoVectorsResponse
7624 {
7625 #[inline(always)]
7626 fn new_empty() -> Self {
7627 Self {
7628 value: fidl::new_empty!(
7629 VectorsStruct,
7630 fidl::encoding::DefaultFuchsiaResourceDialect
7631 ),
7632 }
7633 }
7634
7635 #[inline]
7636 unsafe fn decode(
7637 &mut self,
7638 decoder: &mut fidl::encoding::Decoder<
7639 '_,
7640 fidl::encoding::DefaultFuchsiaResourceDialect,
7641 >,
7642 offset: usize,
7643 _depth: fidl::encoding::Depth,
7644 ) -> fidl::Result<()> {
7645 decoder.debug_check_bounds::<Self>(offset);
7646 fidl::decode!(
7648 VectorsStruct,
7649 fidl::encoding::DefaultFuchsiaResourceDialect,
7650 &mut self.value,
7651 decoder,
7652 offset + 0,
7653 _depth
7654 )?;
7655 Ok(())
7656 }
7657 }
7658
7659 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsWithErrorRequest {
7660 type Borrowed<'a> = &'a mut Self;
7661 fn take_or_borrow<'a>(
7662 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7663 ) -> Self::Borrowed<'a> {
7664 value
7665 }
7666 }
7667
7668 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsWithErrorRequest {
7669 type Owned = Self;
7670
7671 #[inline(always)]
7672 fn inline_align(_context: fidl::encoding::Context) -> usize {
7673 8
7674 }
7675
7676 #[inline(always)]
7677 fn inline_size(_context: fidl::encoding::Context) -> usize {
7678 448
7679 }
7680 }
7681
7682 unsafe impl
7683 fidl::encoding::Encode<
7684 EchoEchoVectorsWithErrorRequest,
7685 fidl::encoding::DefaultFuchsiaResourceDialect,
7686 > for &mut EchoEchoVectorsWithErrorRequest
7687 {
7688 #[inline]
7689 unsafe fn encode(
7690 self,
7691 encoder: &mut fidl::encoding::Encoder<
7692 '_,
7693 fidl::encoding::DefaultFuchsiaResourceDialect,
7694 >,
7695 offset: usize,
7696 _depth: fidl::encoding::Depth,
7697 ) -> fidl::Result<()> {
7698 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorRequest>(offset);
7699 fidl::encoding::Encode::<
7701 EchoEchoVectorsWithErrorRequest,
7702 fidl::encoding::DefaultFuchsiaResourceDialect,
7703 >::encode(
7704 (
7705 <VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7706 &mut self.value,
7707 ),
7708 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
7709 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7710 &self.forward_to_server,
7711 ),
7712 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
7713 ),
7714 encoder,
7715 offset,
7716 _depth,
7717 )
7718 }
7719 }
7720 unsafe impl<
7721 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7722 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
7723 T2: fidl::encoding::Encode<
7724 fidl::encoding::UnboundedString,
7725 fidl::encoding::DefaultFuchsiaResourceDialect,
7726 >,
7727 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
7728 >
7729 fidl::encoding::Encode<
7730 EchoEchoVectorsWithErrorRequest,
7731 fidl::encoding::DefaultFuchsiaResourceDialect,
7732 > for (T0, T1, T2, T3)
7733 {
7734 #[inline]
7735 unsafe fn encode(
7736 self,
7737 encoder: &mut fidl::encoding::Encoder<
7738 '_,
7739 fidl::encoding::DefaultFuchsiaResourceDialect,
7740 >,
7741 offset: usize,
7742 depth: fidl::encoding::Depth,
7743 ) -> fidl::Result<()> {
7744 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorRequest>(offset);
7745 unsafe {
7748 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(416);
7749 (ptr as *mut u64).write_unaligned(0);
7750 }
7751 unsafe {
7752 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(440);
7753 (ptr as *mut u64).write_unaligned(0);
7754 }
7755 self.0.encode(encoder, offset + 0, depth)?;
7757 self.1.encode(encoder, offset + 416, depth)?;
7758 self.2.encode(encoder, offset + 424, depth)?;
7759 self.3.encode(encoder, offset + 440, depth)?;
7760 Ok(())
7761 }
7762 }
7763
7764 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7765 for EchoEchoVectorsWithErrorRequest
7766 {
7767 #[inline(always)]
7768 fn new_empty() -> Self {
7769 Self {
7770 value: fidl::new_empty!(
7771 VectorsStruct,
7772 fidl::encoding::DefaultFuchsiaResourceDialect
7773 ),
7774 result_err: fidl::new_empty!(
7775 DefaultEnum,
7776 fidl::encoding::DefaultFuchsiaResourceDialect
7777 ),
7778 forward_to_server: fidl::new_empty!(
7779 fidl::encoding::UnboundedString,
7780 fidl::encoding::DefaultFuchsiaResourceDialect
7781 ),
7782 result_variant: fidl::new_empty!(
7783 RespondWith,
7784 fidl::encoding::DefaultFuchsiaResourceDialect
7785 ),
7786 }
7787 }
7788
7789 #[inline]
7790 unsafe fn decode(
7791 &mut self,
7792 decoder: &mut fidl::encoding::Decoder<
7793 '_,
7794 fidl::encoding::DefaultFuchsiaResourceDialect,
7795 >,
7796 offset: usize,
7797 _depth: fidl::encoding::Depth,
7798 ) -> fidl::Result<()> {
7799 decoder.debug_check_bounds::<Self>(offset);
7800 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(416) };
7802 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7803 let mask = 0xffffffff00000000u64;
7804 let maskedval = padval & mask;
7805 if maskedval != 0 {
7806 return Err(fidl::Error::NonZeroPadding {
7807 padding_start: offset + 416 + ((mask as u64).trailing_zeros() / 8) as usize,
7808 });
7809 }
7810 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(440) };
7811 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7812 let mask = 0xffffffff00000000u64;
7813 let maskedval = padval & mask;
7814 if maskedval != 0 {
7815 return Err(fidl::Error::NonZeroPadding {
7816 padding_start: offset + 440 + ((mask as u64).trailing_zeros() / 8) as usize,
7817 });
7818 }
7819 fidl::decode!(
7820 VectorsStruct,
7821 fidl::encoding::DefaultFuchsiaResourceDialect,
7822 &mut self.value,
7823 decoder,
7824 offset + 0,
7825 _depth
7826 )?;
7827 fidl::decode!(
7828 DefaultEnum,
7829 fidl::encoding::DefaultFuchsiaResourceDialect,
7830 &mut self.result_err,
7831 decoder,
7832 offset + 416,
7833 _depth
7834 )?;
7835 fidl::decode!(
7836 fidl::encoding::UnboundedString,
7837 fidl::encoding::DefaultFuchsiaResourceDialect,
7838 &mut self.forward_to_server,
7839 decoder,
7840 offset + 424,
7841 _depth
7842 )?;
7843 fidl::decode!(
7844 RespondWith,
7845 fidl::encoding::DefaultFuchsiaResourceDialect,
7846 &mut self.result_variant,
7847 decoder,
7848 offset + 440,
7849 _depth
7850 )?;
7851 Ok(())
7852 }
7853 }
7854
7855 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsRequest {
7856 type Borrowed<'a> = &'a mut Self;
7857 fn take_or_borrow<'a>(
7858 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7859 ) -> Self::Borrowed<'a> {
7860 value
7861 }
7862 }
7863
7864 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsRequest {
7865 type Owned = Self;
7866
7867 #[inline(always)]
7868 fn inline_align(_context: fidl::encoding::Context) -> usize {
7869 8
7870 }
7871
7872 #[inline(always)]
7873 fn inline_size(_context: fidl::encoding::Context) -> usize {
7874 32
7875 }
7876 }
7877
7878 unsafe impl
7879 fidl::encoding::Encode<
7880 EchoEchoXunionsRequest,
7881 fidl::encoding::DefaultFuchsiaResourceDialect,
7882 > for &mut EchoEchoXunionsRequest
7883 {
7884 #[inline]
7885 unsafe fn encode(
7886 self,
7887 encoder: &mut fidl::encoding::Encoder<
7888 '_,
7889 fidl::encoding::DefaultFuchsiaResourceDialect,
7890 >,
7891 offset: usize,
7892 _depth: fidl::encoding::Depth,
7893 ) -> fidl::Result<()> {
7894 encoder.debug_check_bounds::<EchoEchoXunionsRequest>(offset);
7895 fidl::encoding::Encode::<EchoEchoXunionsRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
7897 (
7898 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
7899 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(&self.forward_to_server),
7900 ),
7901 encoder, offset, _depth
7902 )
7903 }
7904 }
7905 unsafe impl<
7906 T0: fidl::encoding::Encode<
7907 fidl::encoding::UnboundedVector<AllTypesXunion>,
7908 fidl::encoding::DefaultFuchsiaResourceDialect,
7909 >,
7910 T1: fidl::encoding::Encode<
7911 fidl::encoding::UnboundedString,
7912 fidl::encoding::DefaultFuchsiaResourceDialect,
7913 >,
7914 >
7915 fidl::encoding::Encode<
7916 EchoEchoXunionsRequest,
7917 fidl::encoding::DefaultFuchsiaResourceDialect,
7918 > for (T0, T1)
7919 {
7920 #[inline]
7921 unsafe fn encode(
7922 self,
7923 encoder: &mut fidl::encoding::Encoder<
7924 '_,
7925 fidl::encoding::DefaultFuchsiaResourceDialect,
7926 >,
7927 offset: usize,
7928 depth: fidl::encoding::Depth,
7929 ) -> fidl::Result<()> {
7930 encoder.debug_check_bounds::<EchoEchoXunionsRequest>(offset);
7931 self.0.encode(encoder, offset + 0, depth)?;
7935 self.1.encode(encoder, offset + 16, depth)?;
7936 Ok(())
7937 }
7938 }
7939
7940 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7941 for EchoEchoXunionsRequest
7942 {
7943 #[inline(always)]
7944 fn new_empty() -> Self {
7945 Self {
7946 value: fidl::new_empty!(
7947 fidl::encoding::UnboundedVector<AllTypesXunion>,
7948 fidl::encoding::DefaultFuchsiaResourceDialect
7949 ),
7950 forward_to_server: fidl::new_empty!(
7951 fidl::encoding::UnboundedString,
7952 fidl::encoding::DefaultFuchsiaResourceDialect
7953 ),
7954 }
7955 }
7956
7957 #[inline]
7958 unsafe fn decode(
7959 &mut self,
7960 decoder: &mut fidl::encoding::Decoder<
7961 '_,
7962 fidl::encoding::DefaultFuchsiaResourceDialect,
7963 >,
7964 offset: usize,
7965 _depth: fidl::encoding::Depth,
7966 ) -> fidl::Result<()> {
7967 decoder.debug_check_bounds::<Self>(offset);
7968 fidl::decode!(
7970 fidl::encoding::UnboundedVector<AllTypesXunion>,
7971 fidl::encoding::DefaultFuchsiaResourceDialect,
7972 &mut self.value,
7973 decoder,
7974 offset + 0,
7975 _depth
7976 )?;
7977 fidl::decode!(
7978 fidl::encoding::UnboundedString,
7979 fidl::encoding::DefaultFuchsiaResourceDialect,
7980 &mut self.forward_to_server,
7981 decoder,
7982 offset + 16,
7983 _depth
7984 )?;
7985 Ok(())
7986 }
7987 }
7988
7989 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsResponse {
7990 type Borrowed<'a> = &'a mut Self;
7991 fn take_or_borrow<'a>(
7992 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7993 ) -> Self::Borrowed<'a> {
7994 value
7995 }
7996 }
7997
7998 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsResponse {
7999 type Owned = Self;
8000
8001 #[inline(always)]
8002 fn inline_align(_context: fidl::encoding::Context) -> usize {
8003 8
8004 }
8005
8006 #[inline(always)]
8007 fn inline_size(_context: fidl::encoding::Context) -> usize {
8008 16
8009 }
8010 }
8011
8012 unsafe impl
8013 fidl::encoding::Encode<
8014 EchoEchoXunionsResponse,
8015 fidl::encoding::DefaultFuchsiaResourceDialect,
8016 > for &mut EchoEchoXunionsResponse
8017 {
8018 #[inline]
8019 unsafe fn encode(
8020 self,
8021 encoder: &mut fidl::encoding::Encoder<
8022 '_,
8023 fidl::encoding::DefaultFuchsiaResourceDialect,
8024 >,
8025 offset: usize,
8026 _depth: fidl::encoding::Depth,
8027 ) -> fidl::Result<()> {
8028 encoder.debug_check_bounds::<EchoEchoXunionsResponse>(offset);
8029 fidl::encoding::Encode::<EchoEchoXunionsResponse, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8031 (
8032 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8033 ),
8034 encoder, offset, _depth
8035 )
8036 }
8037 }
8038 unsafe impl<
8039 T0: fidl::encoding::Encode<
8040 fidl::encoding::UnboundedVector<AllTypesXunion>,
8041 fidl::encoding::DefaultFuchsiaResourceDialect,
8042 >,
8043 >
8044 fidl::encoding::Encode<
8045 EchoEchoXunionsResponse,
8046 fidl::encoding::DefaultFuchsiaResourceDialect,
8047 > for (T0,)
8048 {
8049 #[inline]
8050 unsafe fn encode(
8051 self,
8052 encoder: &mut fidl::encoding::Encoder<
8053 '_,
8054 fidl::encoding::DefaultFuchsiaResourceDialect,
8055 >,
8056 offset: usize,
8057 depth: fidl::encoding::Depth,
8058 ) -> fidl::Result<()> {
8059 encoder.debug_check_bounds::<EchoEchoXunionsResponse>(offset);
8060 self.0.encode(encoder, offset + 0, depth)?;
8064 Ok(())
8065 }
8066 }
8067
8068 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8069 for EchoEchoXunionsResponse
8070 {
8071 #[inline(always)]
8072 fn new_empty() -> Self {
8073 Self {
8074 value: fidl::new_empty!(
8075 fidl::encoding::UnboundedVector<AllTypesXunion>,
8076 fidl::encoding::DefaultFuchsiaResourceDialect
8077 ),
8078 }
8079 }
8080
8081 #[inline]
8082 unsafe fn decode(
8083 &mut self,
8084 decoder: &mut fidl::encoding::Decoder<
8085 '_,
8086 fidl::encoding::DefaultFuchsiaResourceDialect,
8087 >,
8088 offset: usize,
8089 _depth: fidl::encoding::Depth,
8090 ) -> fidl::Result<()> {
8091 decoder.debug_check_bounds::<Self>(offset);
8092 fidl::decode!(
8094 fidl::encoding::UnboundedVector<AllTypesXunion>,
8095 fidl::encoding::DefaultFuchsiaResourceDialect,
8096 &mut self.value,
8097 decoder,
8098 offset + 0,
8099 _depth
8100 )?;
8101 Ok(())
8102 }
8103 }
8104
8105 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsWithErrorRequest {
8106 type Borrowed<'a> = &'a mut Self;
8107 fn take_or_borrow<'a>(
8108 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8109 ) -> Self::Borrowed<'a> {
8110 value
8111 }
8112 }
8113
8114 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsWithErrorRequest {
8115 type Owned = Self;
8116
8117 #[inline(always)]
8118 fn inline_align(_context: fidl::encoding::Context) -> usize {
8119 8
8120 }
8121
8122 #[inline(always)]
8123 fn inline_size(_context: fidl::encoding::Context) -> usize {
8124 48
8125 }
8126 }
8127
8128 unsafe impl
8129 fidl::encoding::Encode<
8130 EchoEchoXunionsWithErrorRequest,
8131 fidl::encoding::DefaultFuchsiaResourceDialect,
8132 > for &mut EchoEchoXunionsWithErrorRequest
8133 {
8134 #[inline]
8135 unsafe fn encode(
8136 self,
8137 encoder: &mut fidl::encoding::Encoder<
8138 '_,
8139 fidl::encoding::DefaultFuchsiaResourceDialect,
8140 >,
8141 offset: usize,
8142 _depth: fidl::encoding::Depth,
8143 ) -> fidl::Result<()> {
8144 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorRequest>(offset);
8145 fidl::encoding::Encode::<EchoEchoXunionsWithErrorRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8147 (
8148 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8149 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
8150 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(&self.forward_to_server),
8151 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
8152 ),
8153 encoder, offset, _depth
8154 )
8155 }
8156 }
8157 unsafe impl<
8158 T0: fidl::encoding::Encode<
8159 fidl::encoding::UnboundedVector<AllTypesXunion>,
8160 fidl::encoding::DefaultFuchsiaResourceDialect,
8161 >,
8162 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8163 T2: fidl::encoding::Encode<
8164 fidl::encoding::UnboundedString,
8165 fidl::encoding::DefaultFuchsiaResourceDialect,
8166 >,
8167 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
8168 >
8169 fidl::encoding::Encode<
8170 EchoEchoXunionsWithErrorRequest,
8171 fidl::encoding::DefaultFuchsiaResourceDialect,
8172 > for (T0, T1, T2, T3)
8173 {
8174 #[inline]
8175 unsafe fn encode(
8176 self,
8177 encoder: &mut fidl::encoding::Encoder<
8178 '_,
8179 fidl::encoding::DefaultFuchsiaResourceDialect,
8180 >,
8181 offset: usize,
8182 depth: fidl::encoding::Depth,
8183 ) -> fidl::Result<()> {
8184 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorRequest>(offset);
8185 unsafe {
8188 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
8189 (ptr as *mut u64).write_unaligned(0);
8190 }
8191 unsafe {
8192 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(40);
8193 (ptr as *mut u64).write_unaligned(0);
8194 }
8195 self.0.encode(encoder, offset + 0, depth)?;
8197 self.1.encode(encoder, offset + 16, depth)?;
8198 self.2.encode(encoder, offset + 24, depth)?;
8199 self.3.encode(encoder, offset + 40, depth)?;
8200 Ok(())
8201 }
8202 }
8203
8204 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8205 for EchoEchoXunionsWithErrorRequest
8206 {
8207 #[inline(always)]
8208 fn new_empty() -> Self {
8209 Self {
8210 value: fidl::new_empty!(
8211 fidl::encoding::UnboundedVector<AllTypesXunion>,
8212 fidl::encoding::DefaultFuchsiaResourceDialect
8213 ),
8214 result_err: fidl::new_empty!(
8215 DefaultEnum,
8216 fidl::encoding::DefaultFuchsiaResourceDialect
8217 ),
8218 forward_to_server: fidl::new_empty!(
8219 fidl::encoding::UnboundedString,
8220 fidl::encoding::DefaultFuchsiaResourceDialect
8221 ),
8222 result_variant: fidl::new_empty!(
8223 RespondWith,
8224 fidl::encoding::DefaultFuchsiaResourceDialect
8225 ),
8226 }
8227 }
8228
8229 #[inline]
8230 unsafe fn decode(
8231 &mut self,
8232 decoder: &mut fidl::encoding::Decoder<
8233 '_,
8234 fidl::encoding::DefaultFuchsiaResourceDialect,
8235 >,
8236 offset: usize,
8237 _depth: fidl::encoding::Depth,
8238 ) -> fidl::Result<()> {
8239 decoder.debug_check_bounds::<Self>(offset);
8240 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
8242 let padval = unsafe { (ptr as *const u64).read_unaligned() };
8243 let mask = 0xffffffff00000000u64;
8244 let maskedval = padval & mask;
8245 if maskedval != 0 {
8246 return Err(fidl::Error::NonZeroPadding {
8247 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
8248 });
8249 }
8250 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(40) };
8251 let padval = unsafe { (ptr as *const u64).read_unaligned() };
8252 let mask = 0xffffffff00000000u64;
8253 let maskedval = padval & mask;
8254 if maskedval != 0 {
8255 return Err(fidl::Error::NonZeroPadding {
8256 padding_start: offset + 40 + ((mask as u64).trailing_zeros() / 8) as usize,
8257 });
8258 }
8259 fidl::decode!(
8260 fidl::encoding::UnboundedVector<AllTypesXunion>,
8261 fidl::encoding::DefaultFuchsiaResourceDialect,
8262 &mut self.value,
8263 decoder,
8264 offset + 0,
8265 _depth
8266 )?;
8267 fidl::decode!(
8268 DefaultEnum,
8269 fidl::encoding::DefaultFuchsiaResourceDialect,
8270 &mut self.result_err,
8271 decoder,
8272 offset + 16,
8273 _depth
8274 )?;
8275 fidl::decode!(
8276 fidl::encoding::UnboundedString,
8277 fidl::encoding::DefaultFuchsiaResourceDialect,
8278 &mut self.forward_to_server,
8279 decoder,
8280 offset + 24,
8281 _depth
8282 )?;
8283 fidl::decode!(
8284 RespondWith,
8285 fidl::encoding::DefaultFuchsiaResourceDialect,
8286 &mut self.result_variant,
8287 decoder,
8288 offset + 40,
8289 _depth
8290 )?;
8291 Ok(())
8292 }
8293 }
8294
8295 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysWithErrorResponse {
8296 type Borrowed<'a> = &'a mut Self;
8297 fn take_or_borrow<'a>(
8298 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8299 ) -> Self::Borrowed<'a> {
8300 value
8301 }
8302 }
8303
8304 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysWithErrorResponse {
8305 type Owned = Self;
8306
8307 #[inline(always)]
8308 fn inline_align(_context: fidl::encoding::Context) -> usize {
8309 8
8310 }
8311
8312 #[inline(always)]
8313 fn inline_size(_context: fidl::encoding::Context) -> usize {
8314 680
8315 }
8316 }
8317
8318 unsafe impl
8319 fidl::encoding::Encode<
8320 EchoEchoArraysWithErrorResponse,
8321 fidl::encoding::DefaultFuchsiaResourceDialect,
8322 > for &mut EchoEchoArraysWithErrorResponse
8323 {
8324 #[inline]
8325 unsafe fn encode(
8326 self,
8327 encoder: &mut fidl::encoding::Encoder<
8328 '_,
8329 fidl::encoding::DefaultFuchsiaResourceDialect,
8330 >,
8331 offset: usize,
8332 _depth: fidl::encoding::Depth,
8333 ) -> fidl::Result<()> {
8334 encoder.debug_check_bounds::<EchoEchoArraysWithErrorResponse>(offset);
8335 fidl::encoding::Encode::<
8337 EchoEchoArraysWithErrorResponse,
8338 fidl::encoding::DefaultFuchsiaResourceDialect,
8339 >::encode(
8340 (<ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8341 &mut self.value,
8342 ),),
8343 encoder,
8344 offset,
8345 _depth,
8346 )
8347 }
8348 }
8349 unsafe impl<
8350 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
8351 >
8352 fidl::encoding::Encode<
8353 EchoEchoArraysWithErrorResponse,
8354 fidl::encoding::DefaultFuchsiaResourceDialect,
8355 > for (T0,)
8356 {
8357 #[inline]
8358 unsafe fn encode(
8359 self,
8360 encoder: &mut fidl::encoding::Encoder<
8361 '_,
8362 fidl::encoding::DefaultFuchsiaResourceDialect,
8363 >,
8364 offset: usize,
8365 depth: fidl::encoding::Depth,
8366 ) -> fidl::Result<()> {
8367 encoder.debug_check_bounds::<EchoEchoArraysWithErrorResponse>(offset);
8368 self.0.encode(encoder, offset + 0, depth)?;
8372 Ok(())
8373 }
8374 }
8375
8376 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8377 for EchoEchoArraysWithErrorResponse
8378 {
8379 #[inline(always)]
8380 fn new_empty() -> Self {
8381 Self {
8382 value: fidl::new_empty!(
8383 ArraysStruct,
8384 fidl::encoding::DefaultFuchsiaResourceDialect
8385 ),
8386 }
8387 }
8388
8389 #[inline]
8390 unsafe fn decode(
8391 &mut self,
8392 decoder: &mut fidl::encoding::Decoder<
8393 '_,
8394 fidl::encoding::DefaultFuchsiaResourceDialect,
8395 >,
8396 offset: usize,
8397 _depth: fidl::encoding::Depth,
8398 ) -> fidl::Result<()> {
8399 decoder.debug_check_bounds::<Self>(offset);
8400 fidl::decode!(
8402 ArraysStruct,
8403 fidl::encoding::DefaultFuchsiaResourceDialect,
8404 &mut self.value,
8405 decoder,
8406 offset + 0,
8407 _depth
8408 )?;
8409 Ok(())
8410 }
8411 }
8412
8413 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructWithErrorResponse {
8414 type Borrowed<'a> = &'a mut Self;
8415 fn take_or_borrow<'a>(
8416 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8417 ) -> Self::Borrowed<'a> {
8418 value
8419 }
8420 }
8421
8422 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructWithErrorResponse {
8423 type Owned = Self;
8424
8425 #[inline(always)]
8426 fn inline_align(_context: fidl::encoding::Context) -> usize {
8427 8
8428 }
8429
8430 #[inline(always)]
8431 fn inline_size(_context: fidl::encoding::Context) -> usize {
8432 2912
8433 }
8434 }
8435
8436 unsafe impl
8437 fidl::encoding::Encode<
8438 EchoEchoStructWithErrorResponse,
8439 fidl::encoding::DefaultFuchsiaResourceDialect,
8440 > for &mut EchoEchoStructWithErrorResponse
8441 {
8442 #[inline]
8443 unsafe fn encode(
8444 self,
8445 encoder: &mut fidl::encoding::Encoder<
8446 '_,
8447 fidl::encoding::DefaultFuchsiaResourceDialect,
8448 >,
8449 offset: usize,
8450 _depth: fidl::encoding::Depth,
8451 ) -> fidl::Result<()> {
8452 encoder.debug_check_bounds::<EchoEchoStructWithErrorResponse>(offset);
8453 fidl::encoding::Encode::<
8455 EchoEchoStructWithErrorResponse,
8456 fidl::encoding::DefaultFuchsiaResourceDialect,
8457 >::encode(
8458 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
8459 encoder,
8460 offset,
8461 _depth,
8462 )
8463 }
8464 }
8465 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
8466 fidl::encoding::Encode<
8467 EchoEchoStructWithErrorResponse,
8468 fidl::encoding::DefaultFuchsiaResourceDialect,
8469 > for (T0,)
8470 {
8471 #[inline]
8472 unsafe fn encode(
8473 self,
8474 encoder: &mut fidl::encoding::Encoder<
8475 '_,
8476 fidl::encoding::DefaultFuchsiaResourceDialect,
8477 >,
8478 offset: usize,
8479 depth: fidl::encoding::Depth,
8480 ) -> fidl::Result<()> {
8481 encoder.debug_check_bounds::<EchoEchoStructWithErrorResponse>(offset);
8482 self.0.encode(encoder, offset + 0, depth)?;
8486 Ok(())
8487 }
8488 }
8489
8490 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8491 for EchoEchoStructWithErrorResponse
8492 {
8493 #[inline(always)]
8494 fn new_empty() -> Self {
8495 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
8496 }
8497
8498 #[inline]
8499 unsafe fn decode(
8500 &mut self,
8501 decoder: &mut fidl::encoding::Decoder<
8502 '_,
8503 fidl::encoding::DefaultFuchsiaResourceDialect,
8504 >,
8505 offset: usize,
8506 _depth: fidl::encoding::Depth,
8507 ) -> fidl::Result<()> {
8508 decoder.debug_check_bounds::<Self>(offset);
8509 fidl::decode!(
8511 Struct,
8512 fidl::encoding::DefaultFuchsiaResourceDialect,
8513 &mut self.value,
8514 decoder,
8515 offset + 0,
8516 _depth
8517 )?;
8518 Ok(())
8519 }
8520 }
8521
8522 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableWithErrorResponse {
8523 type Borrowed<'a> = &'a mut Self;
8524 fn take_or_borrow<'a>(
8525 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8526 ) -> Self::Borrowed<'a> {
8527 value
8528 }
8529 }
8530
8531 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableWithErrorResponse {
8532 type Owned = Self;
8533
8534 #[inline(always)]
8535 fn inline_align(_context: fidl::encoding::Context) -> usize {
8536 8
8537 }
8538
8539 #[inline(always)]
8540 fn inline_size(_context: fidl::encoding::Context) -> usize {
8541 16
8542 }
8543 }
8544
8545 unsafe impl
8546 fidl::encoding::Encode<
8547 EchoEchoTableWithErrorResponse,
8548 fidl::encoding::DefaultFuchsiaResourceDialect,
8549 > for &mut EchoEchoTableWithErrorResponse
8550 {
8551 #[inline]
8552 unsafe fn encode(
8553 self,
8554 encoder: &mut fidl::encoding::Encoder<
8555 '_,
8556 fidl::encoding::DefaultFuchsiaResourceDialect,
8557 >,
8558 offset: usize,
8559 _depth: fidl::encoding::Depth,
8560 ) -> fidl::Result<()> {
8561 encoder.debug_check_bounds::<EchoEchoTableWithErrorResponse>(offset);
8562 fidl::encoding::Encode::<
8564 EchoEchoTableWithErrorResponse,
8565 fidl::encoding::DefaultFuchsiaResourceDialect,
8566 >::encode(
8567 (<AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8568 &mut self.value,
8569 ),),
8570 encoder,
8571 offset,
8572 _depth,
8573 )
8574 }
8575 }
8576 unsafe impl<
8577 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
8578 >
8579 fidl::encoding::Encode<
8580 EchoEchoTableWithErrorResponse,
8581 fidl::encoding::DefaultFuchsiaResourceDialect,
8582 > for (T0,)
8583 {
8584 #[inline]
8585 unsafe fn encode(
8586 self,
8587 encoder: &mut fidl::encoding::Encoder<
8588 '_,
8589 fidl::encoding::DefaultFuchsiaResourceDialect,
8590 >,
8591 offset: usize,
8592 depth: fidl::encoding::Depth,
8593 ) -> fidl::Result<()> {
8594 encoder.debug_check_bounds::<EchoEchoTableWithErrorResponse>(offset);
8595 self.0.encode(encoder, offset + 0, depth)?;
8599 Ok(())
8600 }
8601 }
8602
8603 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8604 for EchoEchoTableWithErrorResponse
8605 {
8606 #[inline(always)]
8607 fn new_empty() -> Self {
8608 Self {
8609 value: fidl::new_empty!(
8610 AllTypesTable,
8611 fidl::encoding::DefaultFuchsiaResourceDialect
8612 ),
8613 }
8614 }
8615
8616 #[inline]
8617 unsafe fn decode(
8618 &mut self,
8619 decoder: &mut fidl::encoding::Decoder<
8620 '_,
8621 fidl::encoding::DefaultFuchsiaResourceDialect,
8622 >,
8623 offset: usize,
8624 _depth: fidl::encoding::Depth,
8625 ) -> fidl::Result<()> {
8626 decoder.debug_check_bounds::<Self>(offset);
8627 fidl::decode!(
8629 AllTypesTable,
8630 fidl::encoding::DefaultFuchsiaResourceDialect,
8631 &mut self.value,
8632 decoder,
8633 offset + 0,
8634 _depth
8635 )?;
8636 Ok(())
8637 }
8638 }
8639
8640 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsWithErrorResponse {
8641 type Borrowed<'a> = &'a mut Self;
8642 fn take_or_borrow<'a>(
8643 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8644 ) -> Self::Borrowed<'a> {
8645 value
8646 }
8647 }
8648
8649 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsWithErrorResponse {
8650 type Owned = Self;
8651
8652 #[inline(always)]
8653 fn inline_align(_context: fidl::encoding::Context) -> usize {
8654 8
8655 }
8656
8657 #[inline(always)]
8658 fn inline_size(_context: fidl::encoding::Context) -> usize {
8659 416
8660 }
8661 }
8662
8663 unsafe impl
8664 fidl::encoding::Encode<
8665 EchoEchoVectorsWithErrorResponse,
8666 fidl::encoding::DefaultFuchsiaResourceDialect,
8667 > for &mut EchoEchoVectorsWithErrorResponse
8668 {
8669 #[inline]
8670 unsafe fn encode(
8671 self,
8672 encoder: &mut fidl::encoding::Encoder<
8673 '_,
8674 fidl::encoding::DefaultFuchsiaResourceDialect,
8675 >,
8676 offset: usize,
8677 _depth: fidl::encoding::Depth,
8678 ) -> fidl::Result<()> {
8679 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorResponse>(offset);
8680 fidl::encoding::Encode::<
8682 EchoEchoVectorsWithErrorResponse,
8683 fidl::encoding::DefaultFuchsiaResourceDialect,
8684 >::encode(
8685 (<VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8686 &mut self.value,
8687 ),),
8688 encoder,
8689 offset,
8690 _depth,
8691 )
8692 }
8693 }
8694 unsafe impl<
8695 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
8696 >
8697 fidl::encoding::Encode<
8698 EchoEchoVectorsWithErrorResponse,
8699 fidl::encoding::DefaultFuchsiaResourceDialect,
8700 > for (T0,)
8701 {
8702 #[inline]
8703 unsafe fn encode(
8704 self,
8705 encoder: &mut fidl::encoding::Encoder<
8706 '_,
8707 fidl::encoding::DefaultFuchsiaResourceDialect,
8708 >,
8709 offset: usize,
8710 depth: fidl::encoding::Depth,
8711 ) -> fidl::Result<()> {
8712 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorResponse>(offset);
8713 self.0.encode(encoder, offset + 0, depth)?;
8717 Ok(())
8718 }
8719 }
8720
8721 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8722 for EchoEchoVectorsWithErrorResponse
8723 {
8724 #[inline(always)]
8725 fn new_empty() -> Self {
8726 Self {
8727 value: fidl::new_empty!(
8728 VectorsStruct,
8729 fidl::encoding::DefaultFuchsiaResourceDialect
8730 ),
8731 }
8732 }
8733
8734 #[inline]
8735 unsafe fn decode(
8736 &mut self,
8737 decoder: &mut fidl::encoding::Decoder<
8738 '_,
8739 fidl::encoding::DefaultFuchsiaResourceDialect,
8740 >,
8741 offset: usize,
8742 _depth: fidl::encoding::Depth,
8743 ) -> fidl::Result<()> {
8744 decoder.debug_check_bounds::<Self>(offset);
8745 fidl::decode!(
8747 VectorsStruct,
8748 fidl::encoding::DefaultFuchsiaResourceDialect,
8749 &mut self.value,
8750 decoder,
8751 offset + 0,
8752 _depth
8753 )?;
8754 Ok(())
8755 }
8756 }
8757
8758 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsWithErrorResponse {
8759 type Borrowed<'a> = &'a mut Self;
8760 fn take_or_borrow<'a>(
8761 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8762 ) -> Self::Borrowed<'a> {
8763 value
8764 }
8765 }
8766
8767 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsWithErrorResponse {
8768 type Owned = Self;
8769
8770 #[inline(always)]
8771 fn inline_align(_context: fidl::encoding::Context) -> usize {
8772 8
8773 }
8774
8775 #[inline(always)]
8776 fn inline_size(_context: fidl::encoding::Context) -> usize {
8777 16
8778 }
8779 }
8780
8781 unsafe impl
8782 fidl::encoding::Encode<
8783 EchoEchoXunionsWithErrorResponse,
8784 fidl::encoding::DefaultFuchsiaResourceDialect,
8785 > for &mut EchoEchoXunionsWithErrorResponse
8786 {
8787 #[inline]
8788 unsafe fn encode(
8789 self,
8790 encoder: &mut fidl::encoding::Encoder<
8791 '_,
8792 fidl::encoding::DefaultFuchsiaResourceDialect,
8793 >,
8794 offset: usize,
8795 _depth: fidl::encoding::Depth,
8796 ) -> fidl::Result<()> {
8797 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorResponse>(offset);
8798 fidl::encoding::Encode::<EchoEchoXunionsWithErrorResponse, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8800 (
8801 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8802 ),
8803 encoder, offset, _depth
8804 )
8805 }
8806 }
8807 unsafe impl<
8808 T0: fidl::encoding::Encode<
8809 fidl::encoding::UnboundedVector<AllTypesXunion>,
8810 fidl::encoding::DefaultFuchsiaResourceDialect,
8811 >,
8812 >
8813 fidl::encoding::Encode<
8814 EchoEchoXunionsWithErrorResponse,
8815 fidl::encoding::DefaultFuchsiaResourceDialect,
8816 > for (T0,)
8817 {
8818 #[inline]
8819 unsafe fn encode(
8820 self,
8821 encoder: &mut fidl::encoding::Encoder<
8822 '_,
8823 fidl::encoding::DefaultFuchsiaResourceDialect,
8824 >,
8825 offset: usize,
8826 depth: fidl::encoding::Depth,
8827 ) -> fidl::Result<()> {
8828 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorResponse>(offset);
8829 self.0.encode(encoder, offset + 0, depth)?;
8833 Ok(())
8834 }
8835 }
8836
8837 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8838 for EchoEchoXunionsWithErrorResponse
8839 {
8840 #[inline(always)]
8841 fn new_empty() -> Self {
8842 Self {
8843 value: fidl::new_empty!(
8844 fidl::encoding::UnboundedVector<AllTypesXunion>,
8845 fidl::encoding::DefaultFuchsiaResourceDialect
8846 ),
8847 }
8848 }
8849
8850 #[inline]
8851 unsafe fn decode(
8852 &mut self,
8853 decoder: &mut fidl::encoding::Decoder<
8854 '_,
8855 fidl::encoding::DefaultFuchsiaResourceDialect,
8856 >,
8857 offset: usize,
8858 _depth: fidl::encoding::Depth,
8859 ) -> fidl::Result<()> {
8860 decoder.debug_check_bounds::<Self>(offset);
8861 fidl::decode!(
8863 fidl::encoding::UnboundedVector<AllTypesXunion>,
8864 fidl::encoding::DefaultFuchsiaResourceDialect,
8865 &mut self.value,
8866 decoder,
8867 offset + 0,
8868 _depth
8869 )?;
8870 Ok(())
8871 }
8872 }
8873
8874 impl fidl::encoding::ResourceTypeMarker for Struct {
8875 type Borrowed<'a> = &'a mut Self;
8876 fn take_or_borrow<'a>(
8877 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8878 ) -> Self::Borrowed<'a> {
8879 value
8880 }
8881 }
8882
8883 unsafe impl fidl::encoding::TypeMarker for Struct {
8884 type Owned = Self;
8885
8886 #[inline(always)]
8887 fn inline_align(_context: fidl::encoding::Context) -> usize {
8888 8
8889 }
8890
8891 #[inline(always)]
8892 fn inline_size(_context: fidl::encoding::Context) -> usize {
8893 2912
8894 }
8895 }
8896
8897 unsafe impl fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>
8898 for &mut Struct
8899 {
8900 #[inline]
8901 unsafe fn encode(
8902 self,
8903 encoder: &mut fidl::encoding::Encoder<
8904 '_,
8905 fidl::encoding::DefaultFuchsiaResourceDialect,
8906 >,
8907 offset: usize,
8908 _depth: fidl::encoding::Depth,
8909 ) -> fidl::Result<()> {
8910 encoder.debug_check_bounds::<Struct>(offset);
8911 fidl::encoding::Encode::<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8913 (
8914 <PrimitiveTypes as fidl::encoding::ValueTypeMarker>::borrow(
8915 &self.primitive_types,
8916 ),
8917 <DefaultValues as fidl::encoding::ValueTypeMarker>::borrow(
8918 &self.default_values,
8919 ),
8920 <Arrays as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8921 &mut self.arrays,
8922 ),
8923 <Arrays2d as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8924 &mut self.arrays_2d,
8925 ),
8926 <Vectors as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8927 &mut self.vectors,
8928 ),
8929 <Handles as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8930 &mut self.handles,
8931 ),
8932 <Strings as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
8933 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.default_enum),
8934 <I8Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_enum),
8935 <I16Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_enum),
8936 <I32Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_enum),
8937 <I64Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_enum),
8938 <U8Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_enum),
8939 <U16Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_enum),
8940 <U32Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_enum),
8941 <U64Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_enum),
8942 <DefaultBits as fidl::encoding::ValueTypeMarker>::borrow(&self.default_bits),
8943 <U8Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_bits),
8944 <U16Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_bits),
8945 <U32Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_bits),
8946 <U64Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_bits),
8947 <Structs as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
8948 <Unions as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
8949 <ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow(&self.table),
8950 <ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow(&self.xunion),
8951 <bool as fidl::encoding::ValueTypeMarker>::borrow(&self.b),
8952 ),
8953 encoder,
8954 offset,
8955 _depth,
8956 )
8957 }
8958 }
8959 unsafe impl<
8960 T0: fidl::encoding::Encode<PrimitiveTypes, fidl::encoding::DefaultFuchsiaResourceDialect>,
8961 T1: fidl::encoding::Encode<DefaultValues, fidl::encoding::DefaultFuchsiaResourceDialect>,
8962 T2: fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>,
8963 T3: fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>,
8964 T4: fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>,
8965 T5: fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>,
8966 T6: fidl::encoding::Encode<Strings, fidl::encoding::DefaultFuchsiaResourceDialect>,
8967 T7: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8968 T8: fidl::encoding::Encode<I8Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8969 T9: fidl::encoding::Encode<I16Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8970 T10: fidl::encoding::Encode<I32Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8971 T11: fidl::encoding::Encode<I64Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8972 T12: fidl::encoding::Encode<U8Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8973 T13: fidl::encoding::Encode<U16Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8974 T14: fidl::encoding::Encode<U32Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8975 T15: fidl::encoding::Encode<U64Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8976 T16: fidl::encoding::Encode<DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8977 T17: fidl::encoding::Encode<U8Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8978 T18: fidl::encoding::Encode<U16Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8979 T19: fidl::encoding::Encode<U32Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8980 T20: fidl::encoding::Encode<U64Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8981 T21: fidl::encoding::Encode<Structs, fidl::encoding::DefaultFuchsiaResourceDialect>,
8982 T22: fidl::encoding::Encode<Unions, fidl::encoding::DefaultFuchsiaResourceDialect>,
8983 T23: fidl::encoding::Encode<ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect>,
8984 T24: fidl::encoding::Encode<ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect>,
8985 T25: fidl::encoding::Encode<bool, fidl::encoding::DefaultFuchsiaResourceDialect>,
8986 > fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>
8987 for (
8988 T0,
8989 T1,
8990 T2,
8991 T3,
8992 T4,
8993 T5,
8994 T6,
8995 T7,
8996 T8,
8997 T9,
8998 T10,
8999 T11,
9000 T12,
9001 T13,
9002 T14,
9003 T15,
9004 T16,
9005 T17,
9006 T18,
9007 T19,
9008 T20,
9009 T21,
9010 T22,
9011 T23,
9012 T24,
9013 T25,
9014 )
9015 {
9016 #[inline]
9017 unsafe fn encode(
9018 self,
9019 encoder: &mut fidl::encoding::Encoder<
9020 '_,
9021 fidl::encoding::DefaultFuchsiaResourceDialect,
9022 >,
9023 offset: usize,
9024 depth: fidl::encoding::Depth,
9025 ) -> fidl::Result<()> {
9026 encoder.debug_check_bounds::<Struct>(offset);
9027 unsafe {
9030 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2640);
9031 (ptr as *mut u64).write_unaligned(0);
9032 }
9033 unsafe {
9034 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2744);
9035 (ptr as *mut u64).write_unaligned(0);
9036 }
9037 unsafe {
9038 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2752);
9039 (ptr as *mut u64).write_unaligned(0);
9040 }
9041 unsafe {
9042 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2768);
9043 (ptr as *mut u64).write_unaligned(0);
9044 }
9045 unsafe {
9046 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2784);
9047 (ptr as *mut u64).write_unaligned(0);
9048 }
9049 unsafe {
9050 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2792);
9051 (ptr as *mut u64).write_unaligned(0);
9052 }
9053 unsafe {
9054 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2904);
9055 (ptr as *mut u64).write_unaligned(0);
9056 }
9057 self.0.encode(encoder, offset + 0, depth)?;
9059 self.1.encode(encoder, offset + 48, depth)?;
9060 self.2.encode(encoder, offset + 120, depth)?;
9061 self.3.encode(encoder, offset + 328, depth)?;
9062 self.4.encode(encoder, offset + 616, depth)?;
9063 self.5.encode(encoder, offset + 2536, depth)?;
9064 self.6.encode(encoder, offset + 2648, depth)?;
9065 self.7.encode(encoder, offset + 2744, depth)?;
9066 self.8.encode(encoder, offset + 2748, depth)?;
9067 self.9.encode(encoder, offset + 2750, depth)?;
9068 self.10.encode(encoder, offset + 2752, depth)?;
9069 self.11.encode(encoder, offset + 2760, depth)?;
9070 self.12.encode(encoder, offset + 2768, depth)?;
9071 self.13.encode(encoder, offset + 2770, depth)?;
9072 self.14.encode(encoder, offset + 2772, depth)?;
9073 self.15.encode(encoder, offset + 2776, depth)?;
9074 self.16.encode(encoder, offset + 2784, depth)?;
9075 self.17.encode(encoder, offset + 2788, depth)?;
9076 self.18.encode(encoder, offset + 2790, depth)?;
9077 self.19.encode(encoder, offset + 2792, depth)?;
9078 self.20.encode(encoder, offset + 2800, depth)?;
9079 self.21.encode(encoder, offset + 2808, depth)?;
9080 self.22.encode(encoder, offset + 2840, depth)?;
9081 self.23.encode(encoder, offset + 2872, depth)?;
9082 self.24.encode(encoder, offset + 2888, depth)?;
9083 self.25.encode(encoder, offset + 2904, depth)?;
9084 Ok(())
9085 }
9086 }
9087
9088 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Struct {
9089 #[inline(always)]
9090 fn new_empty() -> Self {
9091 Self {
9092 primitive_types: fidl::new_empty!(
9093 PrimitiveTypes,
9094 fidl::encoding::DefaultFuchsiaResourceDialect
9095 ),
9096 default_values: fidl::new_empty!(
9097 DefaultValues,
9098 fidl::encoding::DefaultFuchsiaResourceDialect
9099 ),
9100 arrays: fidl::new_empty!(Arrays, fidl::encoding::DefaultFuchsiaResourceDialect),
9101 arrays_2d: fidl::new_empty!(
9102 Arrays2d,
9103 fidl::encoding::DefaultFuchsiaResourceDialect
9104 ),
9105 vectors: fidl::new_empty!(Vectors, fidl::encoding::DefaultFuchsiaResourceDialect),
9106 handles: fidl::new_empty!(Handles, fidl::encoding::DefaultFuchsiaResourceDialect),
9107 strings: fidl::new_empty!(Strings, fidl::encoding::DefaultFuchsiaResourceDialect),
9108 default_enum: fidl::new_empty!(
9109 DefaultEnum,
9110 fidl::encoding::DefaultFuchsiaResourceDialect
9111 ),
9112 i8_enum: fidl::new_empty!(I8Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9113 i16_enum: fidl::new_empty!(I16Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9114 i32_enum: fidl::new_empty!(I32Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9115 i64_enum: fidl::new_empty!(I64Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9116 u8_enum: fidl::new_empty!(U8Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9117 u16_enum: fidl::new_empty!(U16Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9118 u32_enum: fidl::new_empty!(U32Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9119 u64_enum: fidl::new_empty!(U64Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9120 default_bits: fidl::new_empty!(
9121 DefaultBits,
9122 fidl::encoding::DefaultFuchsiaResourceDialect
9123 ),
9124 u8_bits: fidl::new_empty!(U8Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9125 u16_bits: fidl::new_empty!(U16Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9126 u32_bits: fidl::new_empty!(U32Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9127 u64_bits: fidl::new_empty!(U64Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9128 structs: fidl::new_empty!(Structs, fidl::encoding::DefaultFuchsiaResourceDialect),
9129 unions: fidl::new_empty!(Unions, fidl::encoding::DefaultFuchsiaResourceDialect),
9130 table: fidl::new_empty!(
9131 ThisIsATable,
9132 fidl::encoding::DefaultFuchsiaResourceDialect
9133 ),
9134 xunion: fidl::new_empty!(
9135 ThisIsAXunion,
9136 fidl::encoding::DefaultFuchsiaResourceDialect
9137 ),
9138 b: fidl::new_empty!(bool, fidl::encoding::DefaultFuchsiaResourceDialect),
9139 }
9140 }
9141
9142 #[inline]
9143 unsafe fn decode(
9144 &mut self,
9145 decoder: &mut fidl::encoding::Decoder<
9146 '_,
9147 fidl::encoding::DefaultFuchsiaResourceDialect,
9148 >,
9149 offset: usize,
9150 _depth: fidl::encoding::Depth,
9151 ) -> fidl::Result<()> {
9152 decoder.debug_check_bounds::<Self>(offset);
9153 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2640) };
9155 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9156 let mask = 0xffffffff00000000u64;
9157 let maskedval = padval & mask;
9158 if maskedval != 0 {
9159 return Err(fidl::Error::NonZeroPadding {
9160 padding_start: offset + 2640 + ((mask as u64).trailing_zeros() / 8) as usize,
9161 });
9162 }
9163 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2744) };
9164 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9165 let mask = 0xff0000000000u64;
9166 let maskedval = padval & mask;
9167 if maskedval != 0 {
9168 return Err(fidl::Error::NonZeroPadding {
9169 padding_start: offset + 2744 + ((mask as u64).trailing_zeros() / 8) as usize,
9170 });
9171 }
9172 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2752) };
9173 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9174 let mask = 0xffffffff00000000u64;
9175 let maskedval = padval & mask;
9176 if maskedval != 0 {
9177 return Err(fidl::Error::NonZeroPadding {
9178 padding_start: offset + 2752 + ((mask as u64).trailing_zeros() / 8) as usize,
9179 });
9180 }
9181 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2768) };
9182 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9183 let mask = 0xff00u64;
9184 let maskedval = padval & mask;
9185 if maskedval != 0 {
9186 return Err(fidl::Error::NonZeroPadding {
9187 padding_start: offset + 2768 + ((mask as u64).trailing_zeros() / 8) as usize,
9188 });
9189 }
9190 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2784) };
9191 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9192 let mask = 0xff0000000000u64;
9193 let maskedval = padval & mask;
9194 if maskedval != 0 {
9195 return Err(fidl::Error::NonZeroPadding {
9196 padding_start: offset + 2784 + ((mask as u64).trailing_zeros() / 8) as usize,
9197 });
9198 }
9199 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2792) };
9200 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9201 let mask = 0xffffffff00000000u64;
9202 let maskedval = padval & mask;
9203 if maskedval != 0 {
9204 return Err(fidl::Error::NonZeroPadding {
9205 padding_start: offset + 2792 + ((mask as u64).trailing_zeros() / 8) as usize,
9206 });
9207 }
9208 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2904) };
9209 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9210 let mask = 0xffffffffffffff00u64;
9211 let maskedval = padval & mask;
9212 if maskedval != 0 {
9213 return Err(fidl::Error::NonZeroPadding {
9214 padding_start: offset + 2904 + ((mask as u64).trailing_zeros() / 8) as usize,
9215 });
9216 }
9217 fidl::decode!(
9218 PrimitiveTypes,
9219 fidl::encoding::DefaultFuchsiaResourceDialect,
9220 &mut self.primitive_types,
9221 decoder,
9222 offset + 0,
9223 _depth
9224 )?;
9225 fidl::decode!(
9226 DefaultValues,
9227 fidl::encoding::DefaultFuchsiaResourceDialect,
9228 &mut self.default_values,
9229 decoder,
9230 offset + 48,
9231 _depth
9232 )?;
9233 fidl::decode!(
9234 Arrays,
9235 fidl::encoding::DefaultFuchsiaResourceDialect,
9236 &mut self.arrays,
9237 decoder,
9238 offset + 120,
9239 _depth
9240 )?;
9241 fidl::decode!(
9242 Arrays2d,
9243 fidl::encoding::DefaultFuchsiaResourceDialect,
9244 &mut self.arrays_2d,
9245 decoder,
9246 offset + 328,
9247 _depth
9248 )?;
9249 fidl::decode!(
9250 Vectors,
9251 fidl::encoding::DefaultFuchsiaResourceDialect,
9252 &mut self.vectors,
9253 decoder,
9254 offset + 616,
9255 _depth
9256 )?;
9257 fidl::decode!(
9258 Handles,
9259 fidl::encoding::DefaultFuchsiaResourceDialect,
9260 &mut self.handles,
9261 decoder,
9262 offset + 2536,
9263 _depth
9264 )?;
9265 fidl::decode!(
9266 Strings,
9267 fidl::encoding::DefaultFuchsiaResourceDialect,
9268 &mut self.strings,
9269 decoder,
9270 offset + 2648,
9271 _depth
9272 )?;
9273 fidl::decode!(
9274 DefaultEnum,
9275 fidl::encoding::DefaultFuchsiaResourceDialect,
9276 &mut self.default_enum,
9277 decoder,
9278 offset + 2744,
9279 _depth
9280 )?;
9281 fidl::decode!(
9282 I8Enum,
9283 fidl::encoding::DefaultFuchsiaResourceDialect,
9284 &mut self.i8_enum,
9285 decoder,
9286 offset + 2748,
9287 _depth
9288 )?;
9289 fidl::decode!(
9290 I16Enum,
9291 fidl::encoding::DefaultFuchsiaResourceDialect,
9292 &mut self.i16_enum,
9293 decoder,
9294 offset + 2750,
9295 _depth
9296 )?;
9297 fidl::decode!(
9298 I32Enum,
9299 fidl::encoding::DefaultFuchsiaResourceDialect,
9300 &mut self.i32_enum,
9301 decoder,
9302 offset + 2752,
9303 _depth
9304 )?;
9305 fidl::decode!(
9306 I64Enum,
9307 fidl::encoding::DefaultFuchsiaResourceDialect,
9308 &mut self.i64_enum,
9309 decoder,
9310 offset + 2760,
9311 _depth
9312 )?;
9313 fidl::decode!(
9314 U8Enum,
9315 fidl::encoding::DefaultFuchsiaResourceDialect,
9316 &mut self.u8_enum,
9317 decoder,
9318 offset + 2768,
9319 _depth
9320 )?;
9321 fidl::decode!(
9322 U16Enum,
9323 fidl::encoding::DefaultFuchsiaResourceDialect,
9324 &mut self.u16_enum,
9325 decoder,
9326 offset + 2770,
9327 _depth
9328 )?;
9329 fidl::decode!(
9330 U32Enum,
9331 fidl::encoding::DefaultFuchsiaResourceDialect,
9332 &mut self.u32_enum,
9333 decoder,
9334 offset + 2772,
9335 _depth
9336 )?;
9337 fidl::decode!(
9338 U64Enum,
9339 fidl::encoding::DefaultFuchsiaResourceDialect,
9340 &mut self.u64_enum,
9341 decoder,
9342 offset + 2776,
9343 _depth
9344 )?;
9345 fidl::decode!(
9346 DefaultBits,
9347 fidl::encoding::DefaultFuchsiaResourceDialect,
9348 &mut self.default_bits,
9349 decoder,
9350 offset + 2784,
9351 _depth
9352 )?;
9353 fidl::decode!(
9354 U8Bits,
9355 fidl::encoding::DefaultFuchsiaResourceDialect,
9356 &mut self.u8_bits,
9357 decoder,
9358 offset + 2788,
9359 _depth
9360 )?;
9361 fidl::decode!(
9362 U16Bits,
9363 fidl::encoding::DefaultFuchsiaResourceDialect,
9364 &mut self.u16_bits,
9365 decoder,
9366 offset + 2790,
9367 _depth
9368 )?;
9369 fidl::decode!(
9370 U32Bits,
9371 fidl::encoding::DefaultFuchsiaResourceDialect,
9372 &mut self.u32_bits,
9373 decoder,
9374 offset + 2792,
9375 _depth
9376 )?;
9377 fidl::decode!(
9378 U64Bits,
9379 fidl::encoding::DefaultFuchsiaResourceDialect,
9380 &mut self.u64_bits,
9381 decoder,
9382 offset + 2800,
9383 _depth
9384 )?;
9385 fidl::decode!(
9386 Structs,
9387 fidl::encoding::DefaultFuchsiaResourceDialect,
9388 &mut self.structs,
9389 decoder,
9390 offset + 2808,
9391 _depth
9392 )?;
9393 fidl::decode!(
9394 Unions,
9395 fidl::encoding::DefaultFuchsiaResourceDialect,
9396 &mut self.unions,
9397 decoder,
9398 offset + 2840,
9399 _depth
9400 )?;
9401 fidl::decode!(
9402 ThisIsATable,
9403 fidl::encoding::DefaultFuchsiaResourceDialect,
9404 &mut self.table,
9405 decoder,
9406 offset + 2872,
9407 _depth
9408 )?;
9409 fidl::decode!(
9410 ThisIsAXunion,
9411 fidl::encoding::DefaultFuchsiaResourceDialect,
9412 &mut self.xunion,
9413 decoder,
9414 offset + 2888,
9415 _depth
9416 )?;
9417 fidl::decode!(
9418 bool,
9419 fidl::encoding::DefaultFuchsiaResourceDialect,
9420 &mut self.b,
9421 decoder,
9422 offset + 2904,
9423 _depth
9424 )?;
9425 Ok(())
9426 }
9427 }
9428
9429 impl fidl::encoding::ResourceTypeMarker for VectorsStruct {
9430 type Borrowed<'a> = &'a mut Self;
9431 fn take_or_borrow<'a>(
9432 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
9433 ) -> Self::Borrowed<'a> {
9434 value
9435 }
9436 }
9437
9438 unsafe impl fidl::encoding::TypeMarker for VectorsStruct {
9439 type Owned = Self;
9440
9441 #[inline(always)]
9442 fn inline_align(_context: fidl::encoding::Context) -> usize {
9443 8
9444 }
9445
9446 #[inline(always)]
9447 fn inline_size(_context: fidl::encoding::Context) -> usize {
9448 416
9449 }
9450 }
9451
9452 unsafe impl fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
9453 for &mut VectorsStruct
9454 {
9455 #[inline]
9456 unsafe fn encode(
9457 self,
9458 encoder: &mut fidl::encoding::Encoder<
9459 '_,
9460 fidl::encoding::DefaultFuchsiaResourceDialect,
9461 >,
9462 offset: usize,
9463 _depth: fidl::encoding::Depth,
9464 ) -> fidl::Result<()> {
9465 encoder.debug_check_bounds::<VectorsStruct>(offset);
9466 fidl::encoding::Encode::<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
9468 (
9469 <fidl::encoding::Vector<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bools),
9470 <fidl::encoding::Vector<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int8s),
9471 <fidl::encoding::Vector<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int16s),
9472 <fidl::encoding::Vector<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int32s),
9473 <fidl::encoding::Vector<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int64s),
9474 <fidl::encoding::Vector<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint8s),
9475 <fidl::encoding::Vector<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint16s),
9476 <fidl::encoding::Vector<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint32s),
9477 <fidl::encoding::Vector<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint64s),
9478 <fidl::encoding::Vector<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float32s),
9479 <fidl::encoding::Vector<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float64s),
9480 <fidl::encoding::Vector<DefaultEnum, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.enums),
9481 <fidl::encoding::Vector<DefaultBits, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bits),
9482 <fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handles),
9483 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.nullable_handles),
9484 <fidl::encoding::Vector<fidl::encoding::UnboundedString, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
9485 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_strings),
9486 <fidl::encoding::Vector<ThisIsAStruct, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
9487 <fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_structs),
9488 <fidl::encoding::Vector<ThisIsAUnion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
9489 <fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_unions),
9490 <fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.arrays),
9491 <fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.vectors),
9492 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_vectors),
9493 <fidl::encoding::Vector<ThisIsATable, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.tables),
9494 <fidl::encoding::Vector<ThisIsAXunion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.xunions),
9495 ),
9496 encoder, offset, _depth
9497 )
9498 }
9499 }
9500 unsafe impl<
9501 T0: fidl::encoding::Encode<
9502 fidl::encoding::Vector<bool, 3>,
9503 fidl::encoding::DefaultFuchsiaResourceDialect,
9504 >,
9505 T1: fidl::encoding::Encode<
9506 fidl::encoding::Vector<i8, 3>,
9507 fidl::encoding::DefaultFuchsiaResourceDialect,
9508 >,
9509 T2: fidl::encoding::Encode<
9510 fidl::encoding::Vector<i16, 3>,
9511 fidl::encoding::DefaultFuchsiaResourceDialect,
9512 >,
9513 T3: fidl::encoding::Encode<
9514 fidl::encoding::Vector<i32, 3>,
9515 fidl::encoding::DefaultFuchsiaResourceDialect,
9516 >,
9517 T4: fidl::encoding::Encode<
9518 fidl::encoding::Vector<i64, 3>,
9519 fidl::encoding::DefaultFuchsiaResourceDialect,
9520 >,
9521 T5: fidl::encoding::Encode<
9522 fidl::encoding::Vector<u8, 3>,
9523 fidl::encoding::DefaultFuchsiaResourceDialect,
9524 >,
9525 T6: fidl::encoding::Encode<
9526 fidl::encoding::Vector<u16, 3>,
9527 fidl::encoding::DefaultFuchsiaResourceDialect,
9528 >,
9529 T7: fidl::encoding::Encode<
9530 fidl::encoding::Vector<u32, 3>,
9531 fidl::encoding::DefaultFuchsiaResourceDialect,
9532 >,
9533 T8: fidl::encoding::Encode<
9534 fidl::encoding::Vector<u64, 3>,
9535 fidl::encoding::DefaultFuchsiaResourceDialect,
9536 >,
9537 T9: fidl::encoding::Encode<
9538 fidl::encoding::Vector<f32, 3>,
9539 fidl::encoding::DefaultFuchsiaResourceDialect,
9540 >,
9541 T10: fidl::encoding::Encode<
9542 fidl::encoding::Vector<f64, 3>,
9543 fidl::encoding::DefaultFuchsiaResourceDialect,
9544 >,
9545 T11: fidl::encoding::Encode<
9546 fidl::encoding::Vector<DefaultEnum, 3>,
9547 fidl::encoding::DefaultFuchsiaResourceDialect,
9548 >,
9549 T12: fidl::encoding::Encode<
9550 fidl::encoding::Vector<DefaultBits, 3>,
9551 fidl::encoding::DefaultFuchsiaResourceDialect,
9552 >,
9553 T13: fidl::encoding::Encode<
9554 fidl::encoding::Vector<
9555 fidl::encoding::HandleType<
9556 fidl::NullableHandle,
9557 { fidl::ObjectType::NONE.into_raw() },
9558 2147483648,
9559 >,
9560 3,
9561 >,
9562 fidl::encoding::DefaultFuchsiaResourceDialect,
9563 >,
9564 T14: fidl::encoding::Encode<
9565 fidl::encoding::Vector<
9566 fidl::encoding::Optional<
9567 fidl::encoding::HandleType<
9568 fidl::NullableHandle,
9569 { fidl::ObjectType::NONE.into_raw() },
9570 2147483648,
9571 >,
9572 >,
9573 3,
9574 >,
9575 fidl::encoding::DefaultFuchsiaResourceDialect,
9576 >,
9577 T15: fidl::encoding::Encode<
9578 fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>,
9579 fidl::encoding::DefaultFuchsiaResourceDialect,
9580 >,
9581 T16: fidl::encoding::Encode<
9582 fidl::encoding::Vector<
9583 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9584 3,
9585 >,
9586 fidl::encoding::DefaultFuchsiaResourceDialect,
9587 >,
9588 T17: fidl::encoding::Encode<
9589 fidl::encoding::Vector<ThisIsAStruct, 3>,
9590 fidl::encoding::DefaultFuchsiaResourceDialect,
9591 >,
9592 T18: fidl::encoding::Encode<
9593 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9594 fidl::encoding::DefaultFuchsiaResourceDialect,
9595 >,
9596 T19: fidl::encoding::Encode<
9597 fidl::encoding::Vector<ThisIsAUnion, 3>,
9598 fidl::encoding::DefaultFuchsiaResourceDialect,
9599 >,
9600 T20: fidl::encoding::Encode<
9601 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9602 fidl::encoding::DefaultFuchsiaResourceDialect,
9603 >,
9604 T21: fidl::encoding::Encode<
9605 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9606 fidl::encoding::DefaultFuchsiaResourceDialect,
9607 >,
9608 T22: fidl::encoding::Encode<
9609 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9610 fidl::encoding::DefaultFuchsiaResourceDialect,
9611 >,
9612 T23: fidl::encoding::Encode<
9613 fidl::encoding::Vector<
9614 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9615 3,
9616 >,
9617 fidl::encoding::DefaultFuchsiaResourceDialect,
9618 >,
9619 T24: fidl::encoding::Encode<
9620 fidl::encoding::Vector<ThisIsATable, 3>,
9621 fidl::encoding::DefaultFuchsiaResourceDialect,
9622 >,
9623 T25: fidl::encoding::Encode<
9624 fidl::encoding::Vector<ThisIsAXunion, 3>,
9625 fidl::encoding::DefaultFuchsiaResourceDialect,
9626 >,
9627 > fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
9628 for (
9629 T0,
9630 T1,
9631 T2,
9632 T3,
9633 T4,
9634 T5,
9635 T6,
9636 T7,
9637 T8,
9638 T9,
9639 T10,
9640 T11,
9641 T12,
9642 T13,
9643 T14,
9644 T15,
9645 T16,
9646 T17,
9647 T18,
9648 T19,
9649 T20,
9650 T21,
9651 T22,
9652 T23,
9653 T24,
9654 T25,
9655 )
9656 {
9657 #[inline]
9658 unsafe fn encode(
9659 self,
9660 encoder: &mut fidl::encoding::Encoder<
9661 '_,
9662 fidl::encoding::DefaultFuchsiaResourceDialect,
9663 >,
9664 offset: usize,
9665 depth: fidl::encoding::Depth,
9666 ) -> fidl::Result<()> {
9667 encoder.debug_check_bounds::<VectorsStruct>(offset);
9668 self.0.encode(encoder, offset + 0, depth)?;
9672 self.1.encode(encoder, offset + 16, depth)?;
9673 self.2.encode(encoder, offset + 32, depth)?;
9674 self.3.encode(encoder, offset + 48, depth)?;
9675 self.4.encode(encoder, offset + 64, depth)?;
9676 self.5.encode(encoder, offset + 80, depth)?;
9677 self.6.encode(encoder, offset + 96, depth)?;
9678 self.7.encode(encoder, offset + 112, depth)?;
9679 self.8.encode(encoder, offset + 128, depth)?;
9680 self.9.encode(encoder, offset + 144, depth)?;
9681 self.10.encode(encoder, offset + 160, depth)?;
9682 self.11.encode(encoder, offset + 176, depth)?;
9683 self.12.encode(encoder, offset + 192, depth)?;
9684 self.13.encode(encoder, offset + 208, depth)?;
9685 self.14.encode(encoder, offset + 224, depth)?;
9686 self.15.encode(encoder, offset + 240, depth)?;
9687 self.16.encode(encoder, offset + 256, depth)?;
9688 self.17.encode(encoder, offset + 272, depth)?;
9689 self.18.encode(encoder, offset + 288, depth)?;
9690 self.19.encode(encoder, offset + 304, depth)?;
9691 self.20.encode(encoder, offset + 320, depth)?;
9692 self.21.encode(encoder, offset + 336, depth)?;
9693 self.22.encode(encoder, offset + 352, depth)?;
9694 self.23.encode(encoder, offset + 368, depth)?;
9695 self.24.encode(encoder, offset + 384, depth)?;
9696 self.25.encode(encoder, offset + 400, depth)?;
9697 Ok(())
9698 }
9699 }
9700
9701 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for VectorsStruct {
9702 #[inline(always)]
9703 fn new_empty() -> Self {
9704 Self {
9705 bools: fidl::new_empty!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9706 int8s: fidl::new_empty!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9707 int16s: fidl::new_empty!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9708 int32s: fidl::new_empty!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9709 int64s: fidl::new_empty!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9710 uint8s: fidl::new_empty!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9711 uint16s: fidl::new_empty!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9712 uint32s: fidl::new_empty!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9713 uint64s: fidl::new_empty!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9714 float32s: fidl::new_empty!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9715 float64s: fidl::new_empty!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9716 enums: fidl::new_empty!(fidl::encoding::Vector<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9717 bits: fidl::new_empty!(fidl::encoding::Vector<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9718 handles: fidl::new_empty!(
9719 fidl::encoding::Vector<
9720 fidl::encoding::HandleType<
9721 fidl::NullableHandle,
9722 { fidl::ObjectType::NONE.into_raw() },
9723 2147483648,
9724 >,
9725 3,
9726 >,
9727 fidl::encoding::DefaultFuchsiaResourceDialect
9728 ),
9729 nullable_handles: fidl::new_empty!(
9730 fidl::encoding::Vector<
9731 fidl::encoding::Optional<
9732 fidl::encoding::HandleType<
9733 fidl::NullableHandle,
9734 { fidl::ObjectType::NONE.into_raw() },
9735 2147483648,
9736 >,
9737 >,
9738 3,
9739 >,
9740 fidl::encoding::DefaultFuchsiaResourceDialect
9741 ),
9742 strings: fidl::new_empty!(fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9743 nullable_strings: fidl::new_empty!(
9744 fidl::encoding::Vector<
9745 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9746 3,
9747 >,
9748 fidl::encoding::DefaultFuchsiaResourceDialect
9749 ),
9750 structs: fidl::new_empty!(fidl::encoding::Vector<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9751 nullable_structs: fidl::new_empty!(
9752 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9753 fidl::encoding::DefaultFuchsiaResourceDialect
9754 ),
9755 unions: fidl::new_empty!(fidl::encoding::Vector<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9756 nullable_unions: fidl::new_empty!(
9757 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9758 fidl::encoding::DefaultFuchsiaResourceDialect
9759 ),
9760 arrays: fidl::new_empty!(
9761 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9762 fidl::encoding::DefaultFuchsiaResourceDialect
9763 ),
9764 vectors: fidl::new_empty!(
9765 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9766 fidl::encoding::DefaultFuchsiaResourceDialect
9767 ),
9768 nullable_vectors: fidl::new_empty!(
9769 fidl::encoding::Vector<
9770 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9771 3,
9772 >,
9773 fidl::encoding::DefaultFuchsiaResourceDialect
9774 ),
9775 tables: fidl::new_empty!(fidl::encoding::Vector<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9776 xunions: fidl::new_empty!(fidl::encoding::Vector<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9777 }
9778 }
9779
9780 #[inline]
9781 unsafe fn decode(
9782 &mut self,
9783 decoder: &mut fidl::encoding::Decoder<
9784 '_,
9785 fidl::encoding::DefaultFuchsiaResourceDialect,
9786 >,
9787 offset: usize,
9788 _depth: fidl::encoding::Depth,
9789 ) -> fidl::Result<()> {
9790 decoder.debug_check_bounds::<Self>(offset);
9791 fidl::decode!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bools, decoder, offset + 0, _depth)?;
9793 fidl::decode!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int8s, decoder, offset + 16, _depth)?;
9794 fidl::decode!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int16s, decoder, offset + 32, _depth)?;
9795 fidl::decode!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int32s, decoder, offset + 48, _depth)?;
9796 fidl::decode!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int64s, decoder, offset + 64, _depth)?;
9797 fidl::decode!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint8s, decoder, offset + 80, _depth)?;
9798 fidl::decode!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint16s, decoder, offset + 96, _depth)?;
9799 fidl::decode!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint32s, decoder, offset + 112, _depth)?;
9800 fidl::decode!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint64s, decoder, offset + 128, _depth)?;
9801 fidl::decode!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float32s, decoder, offset + 144, _depth)?;
9802 fidl::decode!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float64s, decoder, offset + 160, _depth)?;
9803 fidl::decode!(fidl::encoding::Vector<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.enums, decoder, offset + 176, _depth)?;
9804 fidl::decode!(fidl::encoding::Vector<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bits, decoder, offset + 192, _depth)?;
9805 fidl::decode!(
9806 fidl::encoding::Vector<
9807 fidl::encoding::HandleType<
9808 fidl::NullableHandle,
9809 { fidl::ObjectType::NONE.into_raw() },
9810 2147483648,
9811 >,
9812 3,
9813 >,
9814 fidl::encoding::DefaultFuchsiaResourceDialect,
9815 &mut self.handles,
9816 decoder,
9817 offset + 208,
9818 _depth
9819 )?;
9820 fidl::decode!(
9821 fidl::encoding::Vector<
9822 fidl::encoding::Optional<
9823 fidl::encoding::HandleType<
9824 fidl::NullableHandle,
9825 { fidl::ObjectType::NONE.into_raw() },
9826 2147483648,
9827 >,
9828 >,
9829 3,
9830 >,
9831 fidl::encoding::DefaultFuchsiaResourceDialect,
9832 &mut self.nullable_handles,
9833 decoder,
9834 offset + 224,
9835 _depth
9836 )?;
9837 fidl::decode!(fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.strings, decoder, offset + 240, _depth)?;
9838 fidl::decode!(
9839 fidl::encoding::Vector<
9840 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9841 3,
9842 >,
9843 fidl::encoding::DefaultFuchsiaResourceDialect,
9844 &mut self.nullable_strings,
9845 decoder,
9846 offset + 256,
9847 _depth
9848 )?;
9849 fidl::decode!(fidl::encoding::Vector<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.structs, decoder, offset + 272, _depth)?;
9850 fidl::decode!(
9851 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9852 fidl::encoding::DefaultFuchsiaResourceDialect,
9853 &mut self.nullable_structs,
9854 decoder,
9855 offset + 288,
9856 _depth
9857 )?;
9858 fidl::decode!(fidl::encoding::Vector<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.unions, decoder, offset + 304, _depth)?;
9859 fidl::decode!(
9860 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9861 fidl::encoding::DefaultFuchsiaResourceDialect,
9862 &mut self.nullable_unions,
9863 decoder,
9864 offset + 320,
9865 _depth
9866 )?;
9867 fidl::decode!(
9868 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9869 fidl::encoding::DefaultFuchsiaResourceDialect,
9870 &mut self.arrays,
9871 decoder,
9872 offset + 336,
9873 _depth
9874 )?;
9875 fidl::decode!(
9876 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9877 fidl::encoding::DefaultFuchsiaResourceDialect,
9878 &mut self.vectors,
9879 decoder,
9880 offset + 352,
9881 _depth
9882 )?;
9883 fidl::decode!(
9884 fidl::encoding::Vector<
9885 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9886 3,
9887 >,
9888 fidl::encoding::DefaultFuchsiaResourceDialect,
9889 &mut self.nullable_vectors,
9890 decoder,
9891 offset + 368,
9892 _depth
9893 )?;
9894 fidl::decode!(fidl::encoding::Vector<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.tables, decoder, offset + 384, _depth)?;
9895 fidl::decode!(fidl::encoding::Vector<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.xunions, decoder, offset + 400, _depth)?;
9896 Ok(())
9897 }
9898 }
9899
9900 impl fidl::encoding::ResourceTypeMarker for Arrays {
9901 type Borrowed<'a> = &'a mut Self;
9902 fn take_or_borrow<'a>(
9903 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
9904 ) -> Self::Borrowed<'a> {
9905 value
9906 }
9907 }
9908
9909 unsafe impl fidl::encoding::TypeMarker for Arrays {
9910 type Owned = Self;
9911
9912 #[inline(always)]
9913 fn inline_align(_context: fidl::encoding::Context) -> usize {
9914 8
9915 }
9916
9917 #[inline(always)]
9918 fn inline_size(_context: fidl::encoding::Context) -> usize {
9919 208
9920 }
9921 }
9922
9923 unsafe impl fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>
9924 for &mut Arrays
9925 {
9926 #[inline]
9927 unsafe fn encode(
9928 self,
9929 encoder: &mut fidl::encoding::Encoder<
9930 '_,
9931 fidl::encoding::DefaultFuchsiaResourceDialect,
9932 >,
9933 offset: usize,
9934 _depth: fidl::encoding::Depth,
9935 ) -> fidl::Result<()> {
9936 encoder.debug_check_bounds::<Arrays>(offset);
9937 fidl::encoding::Encode::<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
9939 (
9940 <fidl::encoding::Array<bool, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9941 &self.b_0,
9942 ),
9943 <fidl::encoding::Array<i8, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9944 &self.i8_0,
9945 ),
9946 <fidl::encoding::Array<i16, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9947 &self.i16_0,
9948 ),
9949 <fidl::encoding::Array<i32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9950 &self.i32_0,
9951 ),
9952 <fidl::encoding::Array<i64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9953 &self.i64_0,
9954 ),
9955 <fidl::encoding::Array<u8, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9956 &self.u8_0,
9957 ),
9958 <fidl::encoding::Array<u16, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9959 &self.u16_0,
9960 ),
9961 <fidl::encoding::Array<u32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9962 &self.u32_0,
9963 ),
9964 <fidl::encoding::Array<u64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9965 &self.u64_0,
9966 ),
9967 <fidl::encoding::Array<f32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9968 &self.f32_0,
9969 ),
9970 <fidl::encoding::Array<f64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9971 &self.f64_0,
9972 ),
9973 <fidl::encoding::Array<
9974 fidl::encoding::HandleType<
9975 fidl::NullableHandle,
9976 { fidl::ObjectType::NONE.into_raw() },
9977 2147483648,
9978 >,
9979 1,
9980 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
9981 &mut self.handle_0
9982 ),
9983 <fidl::encoding::Array<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9984 &self.b_1,
9985 ),
9986 <fidl::encoding::Array<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9987 &self.i8_1,
9988 ),
9989 <fidl::encoding::Array<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9990 &self.i16_1,
9991 ),
9992 <fidl::encoding::Array<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9993 &self.i32_1,
9994 ),
9995 <fidl::encoding::Array<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9996 &self.i64_1,
9997 ),
9998 <fidl::encoding::Array<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9999 &self.u8_1,
10000 ),
10001 <fidl::encoding::Array<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10002 &self.u16_1,
10003 ),
10004 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10005 &self.u32_1,
10006 ),
10007 <fidl::encoding::Array<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10008 &self.u64_1,
10009 ),
10010 <fidl::encoding::Array<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10011 &self.f32_1,
10012 ),
10013 <fidl::encoding::Array<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
10014 &self.f64_1,
10015 ),
10016 <fidl::encoding::Array<
10017 fidl::encoding::HandleType<
10018 fidl::NullableHandle,
10019 { fidl::ObjectType::NONE.into_raw() },
10020 2147483648,
10021 >,
10022 3,
10023 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10024 &mut self.handle_1
10025 ),
10026 ),
10027 encoder,
10028 offset,
10029 _depth,
10030 )
10031 }
10032 }
10033 unsafe impl<
10034 T0: fidl::encoding::Encode<
10035 fidl::encoding::Array<bool, 1>,
10036 fidl::encoding::DefaultFuchsiaResourceDialect,
10037 >,
10038 T1: fidl::encoding::Encode<
10039 fidl::encoding::Array<i8, 1>,
10040 fidl::encoding::DefaultFuchsiaResourceDialect,
10041 >,
10042 T2: fidl::encoding::Encode<
10043 fidl::encoding::Array<i16, 1>,
10044 fidl::encoding::DefaultFuchsiaResourceDialect,
10045 >,
10046 T3: fidl::encoding::Encode<
10047 fidl::encoding::Array<i32, 1>,
10048 fidl::encoding::DefaultFuchsiaResourceDialect,
10049 >,
10050 T4: fidl::encoding::Encode<
10051 fidl::encoding::Array<i64, 1>,
10052 fidl::encoding::DefaultFuchsiaResourceDialect,
10053 >,
10054 T5: fidl::encoding::Encode<
10055 fidl::encoding::Array<u8, 1>,
10056 fidl::encoding::DefaultFuchsiaResourceDialect,
10057 >,
10058 T6: fidl::encoding::Encode<
10059 fidl::encoding::Array<u16, 1>,
10060 fidl::encoding::DefaultFuchsiaResourceDialect,
10061 >,
10062 T7: fidl::encoding::Encode<
10063 fidl::encoding::Array<u32, 1>,
10064 fidl::encoding::DefaultFuchsiaResourceDialect,
10065 >,
10066 T8: fidl::encoding::Encode<
10067 fidl::encoding::Array<u64, 1>,
10068 fidl::encoding::DefaultFuchsiaResourceDialect,
10069 >,
10070 T9: fidl::encoding::Encode<
10071 fidl::encoding::Array<f32, 1>,
10072 fidl::encoding::DefaultFuchsiaResourceDialect,
10073 >,
10074 T10: fidl::encoding::Encode<
10075 fidl::encoding::Array<f64, 1>,
10076 fidl::encoding::DefaultFuchsiaResourceDialect,
10077 >,
10078 T11: fidl::encoding::Encode<
10079 fidl::encoding::Array<
10080 fidl::encoding::HandleType<
10081 fidl::NullableHandle,
10082 { fidl::ObjectType::NONE.into_raw() },
10083 2147483648,
10084 >,
10085 1,
10086 >,
10087 fidl::encoding::DefaultFuchsiaResourceDialect,
10088 >,
10089 T12: fidl::encoding::Encode<
10090 fidl::encoding::Array<bool, 3>,
10091 fidl::encoding::DefaultFuchsiaResourceDialect,
10092 >,
10093 T13: fidl::encoding::Encode<
10094 fidl::encoding::Array<i8, 3>,
10095 fidl::encoding::DefaultFuchsiaResourceDialect,
10096 >,
10097 T14: fidl::encoding::Encode<
10098 fidl::encoding::Array<i16, 3>,
10099 fidl::encoding::DefaultFuchsiaResourceDialect,
10100 >,
10101 T15: fidl::encoding::Encode<
10102 fidl::encoding::Array<i32, 3>,
10103 fidl::encoding::DefaultFuchsiaResourceDialect,
10104 >,
10105 T16: fidl::encoding::Encode<
10106 fidl::encoding::Array<i64, 3>,
10107 fidl::encoding::DefaultFuchsiaResourceDialect,
10108 >,
10109 T17: fidl::encoding::Encode<
10110 fidl::encoding::Array<u8, 3>,
10111 fidl::encoding::DefaultFuchsiaResourceDialect,
10112 >,
10113 T18: fidl::encoding::Encode<
10114 fidl::encoding::Array<u16, 3>,
10115 fidl::encoding::DefaultFuchsiaResourceDialect,
10116 >,
10117 T19: fidl::encoding::Encode<
10118 fidl::encoding::Array<u32, 3>,
10119 fidl::encoding::DefaultFuchsiaResourceDialect,
10120 >,
10121 T20: fidl::encoding::Encode<
10122 fidl::encoding::Array<u64, 3>,
10123 fidl::encoding::DefaultFuchsiaResourceDialect,
10124 >,
10125 T21: fidl::encoding::Encode<
10126 fidl::encoding::Array<f32, 3>,
10127 fidl::encoding::DefaultFuchsiaResourceDialect,
10128 >,
10129 T22: fidl::encoding::Encode<
10130 fidl::encoding::Array<f64, 3>,
10131 fidl::encoding::DefaultFuchsiaResourceDialect,
10132 >,
10133 T23: fidl::encoding::Encode<
10134 fidl::encoding::Array<
10135 fidl::encoding::HandleType<
10136 fidl::NullableHandle,
10137 { fidl::ObjectType::NONE.into_raw() },
10138 2147483648,
10139 >,
10140 3,
10141 >,
10142 fidl::encoding::DefaultFuchsiaResourceDialect,
10143 >,
10144 > fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>
10145 for (
10146 T0,
10147 T1,
10148 T2,
10149 T3,
10150 T4,
10151 T5,
10152 T6,
10153 T7,
10154 T8,
10155 T9,
10156 T10,
10157 T11,
10158 T12,
10159 T13,
10160 T14,
10161 T15,
10162 T16,
10163 T17,
10164 T18,
10165 T19,
10166 T20,
10167 T21,
10168 T22,
10169 T23,
10170 )
10171 {
10172 #[inline]
10173 unsafe fn encode(
10174 self,
10175 encoder: &mut fidl::encoding::Encoder<
10176 '_,
10177 fidl::encoding::DefaultFuchsiaResourceDialect,
10178 >,
10179 offset: usize,
10180 depth: fidl::encoding::Depth,
10181 ) -> fidl::Result<()> {
10182 encoder.debug_check_bounds::<Arrays>(offset);
10183 unsafe {
10186 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
10187 (ptr as *mut u64).write_unaligned(0);
10188 }
10189 unsafe {
10190 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(32);
10191 (ptr as *mut u64).write_unaligned(0);
10192 }
10193 unsafe {
10194 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(72);
10195 (ptr as *mut u64).write_unaligned(0);
10196 }
10197 unsafe {
10198 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(104);
10199 (ptr as *mut u64).write_unaligned(0);
10200 }
10201 unsafe {
10202 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(112);
10203 (ptr as *mut u64).write_unaligned(0);
10204 }
10205 unsafe {
10206 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(160);
10207 (ptr as *mut u64).write_unaligned(0);
10208 }
10209 unsafe {
10210 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(200);
10211 (ptr as *mut u64).write_unaligned(0);
10212 }
10213 self.0.encode(encoder, offset + 0, depth)?;
10215 self.1.encode(encoder, offset + 1, depth)?;
10216 self.2.encode(encoder, offset + 2, depth)?;
10217 self.3.encode(encoder, offset + 4, depth)?;
10218 self.4.encode(encoder, offset + 8, depth)?;
10219 self.5.encode(encoder, offset + 16, depth)?;
10220 self.6.encode(encoder, offset + 18, depth)?;
10221 self.7.encode(encoder, offset + 20, depth)?;
10222 self.8.encode(encoder, offset + 24, depth)?;
10223 self.9.encode(encoder, offset + 32, depth)?;
10224 self.10.encode(encoder, offset + 40, depth)?;
10225 self.11.encode(encoder, offset + 48, depth)?;
10226 self.12.encode(encoder, offset + 52, depth)?;
10227 self.13.encode(encoder, offset + 55, depth)?;
10228 self.14.encode(encoder, offset + 58, depth)?;
10229 self.15.encode(encoder, offset + 64, depth)?;
10230 self.16.encode(encoder, offset + 80, depth)?;
10231 self.17.encode(encoder, offset + 104, depth)?;
10232 self.18.encode(encoder, offset + 108, depth)?;
10233 self.19.encode(encoder, offset + 116, depth)?;
10234 self.20.encode(encoder, offset + 128, depth)?;
10235 self.21.encode(encoder, offset + 152, depth)?;
10236 self.22.encode(encoder, offset + 168, depth)?;
10237 self.23.encode(encoder, offset + 192, depth)?;
10238 Ok(())
10239 }
10240 }
10241
10242 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays {
10243 #[inline(always)]
10244 fn new_empty() -> Self {
10245 Self {
10246 b_0: fidl::new_empty!(fidl::encoding::Array<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10247 i8_0: fidl::new_empty!(fidl::encoding::Array<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10248 i16_0: fidl::new_empty!(fidl::encoding::Array<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10249 i32_0: fidl::new_empty!(fidl::encoding::Array<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10250 i64_0: fidl::new_empty!(fidl::encoding::Array<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10251 u8_0: fidl::new_empty!(fidl::encoding::Array<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10252 u16_0: fidl::new_empty!(fidl::encoding::Array<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10253 u32_0: fidl::new_empty!(fidl::encoding::Array<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10254 u64_0: fidl::new_empty!(fidl::encoding::Array<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10255 f32_0: fidl::new_empty!(fidl::encoding::Array<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10256 f64_0: fidl::new_empty!(fidl::encoding::Array<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10257 handle_0: fidl::new_empty!(
10258 fidl::encoding::Array<
10259 fidl::encoding::HandleType<
10260 fidl::NullableHandle,
10261 { fidl::ObjectType::NONE.into_raw() },
10262 2147483648,
10263 >,
10264 1,
10265 >,
10266 fidl::encoding::DefaultFuchsiaResourceDialect
10267 ),
10268 b_1: fidl::new_empty!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10269 i8_1: fidl::new_empty!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10270 i16_1: fidl::new_empty!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10271 i32_1: fidl::new_empty!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10272 i64_1: fidl::new_empty!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10273 u8_1: fidl::new_empty!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10274 u16_1: fidl::new_empty!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10275 u32_1: fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10276 u64_1: fidl::new_empty!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10277 f32_1: fidl::new_empty!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10278 f64_1: fidl::new_empty!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10279 handle_1: fidl::new_empty!(
10280 fidl::encoding::Array<
10281 fidl::encoding::HandleType<
10282 fidl::NullableHandle,
10283 { fidl::ObjectType::NONE.into_raw() },
10284 2147483648,
10285 >,
10286 3,
10287 >,
10288 fidl::encoding::DefaultFuchsiaResourceDialect
10289 ),
10290 }
10291 }
10292
10293 #[inline]
10294 unsafe fn decode(
10295 &mut self,
10296 decoder: &mut fidl::encoding::Decoder<
10297 '_,
10298 fidl::encoding::DefaultFuchsiaResourceDialect,
10299 >,
10300 offset: usize,
10301 _depth: fidl::encoding::Depth,
10302 ) -> fidl::Result<()> {
10303 decoder.debug_check_bounds::<Self>(offset);
10304 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
10306 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10307 let mask = 0xff00u64;
10308 let maskedval = padval & mask;
10309 if maskedval != 0 {
10310 return Err(fidl::Error::NonZeroPadding {
10311 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
10312 });
10313 }
10314 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(32) };
10315 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10316 let mask = 0xffffffff00000000u64;
10317 let maskedval = padval & mask;
10318 if maskedval != 0 {
10319 return Err(fidl::Error::NonZeroPadding {
10320 padding_start: offset + 32 + ((mask as u64).trailing_zeros() / 8) as usize,
10321 });
10322 }
10323 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(72) };
10324 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10325 let mask = 0xffffffff00000000u64;
10326 let maskedval = padval & mask;
10327 if maskedval != 0 {
10328 return Err(fidl::Error::NonZeroPadding {
10329 padding_start: offset + 72 + ((mask as u64).trailing_zeros() / 8) as usize,
10330 });
10331 }
10332 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(104) };
10333 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10334 let mask = 0xff000000u64;
10335 let maskedval = padval & mask;
10336 if maskedval != 0 {
10337 return Err(fidl::Error::NonZeroPadding {
10338 padding_start: offset + 104 + ((mask as u64).trailing_zeros() / 8) as usize,
10339 });
10340 }
10341 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(112) };
10342 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10343 let mask = 0xffff0000u64;
10344 let maskedval = padval & mask;
10345 if maskedval != 0 {
10346 return Err(fidl::Error::NonZeroPadding {
10347 padding_start: offset + 112 + ((mask as u64).trailing_zeros() / 8) as usize,
10348 });
10349 }
10350 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(160) };
10351 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10352 let mask = 0xffffffff00000000u64;
10353 let maskedval = padval & mask;
10354 if maskedval != 0 {
10355 return Err(fidl::Error::NonZeroPadding {
10356 padding_start: offset + 160 + ((mask as u64).trailing_zeros() / 8) as usize,
10357 });
10358 }
10359 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(200) };
10360 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10361 let mask = 0xffffffff00000000u64;
10362 let maskedval = padval & mask;
10363 if maskedval != 0 {
10364 return Err(fidl::Error::NonZeroPadding {
10365 padding_start: offset + 200 + ((mask as u64).trailing_zeros() / 8) as usize,
10366 });
10367 }
10368 fidl::decode!(fidl::encoding::Array<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_0, decoder, offset + 0, _depth)?;
10369 fidl::decode!(fidl::encoding::Array<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_0, decoder, offset + 1, _depth)?;
10370 fidl::decode!(fidl::encoding::Array<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_0, decoder, offset + 2, _depth)?;
10371 fidl::decode!(fidl::encoding::Array<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_0, decoder, offset + 4, _depth)?;
10372 fidl::decode!(fidl::encoding::Array<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_0, decoder, offset + 8, _depth)?;
10373 fidl::decode!(fidl::encoding::Array<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_0, decoder, offset + 16, _depth)?;
10374 fidl::decode!(fidl::encoding::Array<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_0, decoder, offset + 18, _depth)?;
10375 fidl::decode!(fidl::encoding::Array<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_0, decoder, offset + 20, _depth)?;
10376 fidl::decode!(fidl::encoding::Array<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_0, decoder, offset + 24, _depth)?;
10377 fidl::decode!(fidl::encoding::Array<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_0, decoder, offset + 32, _depth)?;
10378 fidl::decode!(fidl::encoding::Array<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_0, decoder, offset + 40, _depth)?;
10379 fidl::decode!(
10380 fidl::encoding::Array<
10381 fidl::encoding::HandleType<
10382 fidl::NullableHandle,
10383 { fidl::ObjectType::NONE.into_raw() },
10384 2147483648,
10385 >,
10386 1,
10387 >,
10388 fidl::encoding::DefaultFuchsiaResourceDialect,
10389 &mut self.handle_0,
10390 decoder,
10391 offset + 48,
10392 _depth
10393 )?;
10394 fidl::decode!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_1, decoder, offset + 52, _depth)?;
10395 fidl::decode!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_1, decoder, offset + 55, _depth)?;
10396 fidl::decode!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_1, decoder, offset + 58, _depth)?;
10397 fidl::decode!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_1, decoder, offset + 64, _depth)?;
10398 fidl::decode!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_1, decoder, offset + 80, _depth)?;
10399 fidl::decode!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_1, decoder, offset + 104, _depth)?;
10400 fidl::decode!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_1, decoder, offset + 108, _depth)?;
10401 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_1, decoder, offset + 116, _depth)?;
10402 fidl::decode!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_1, decoder, offset + 128, _depth)?;
10403 fidl::decode!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_1, decoder, offset + 152, _depth)?;
10404 fidl::decode!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_1, decoder, offset + 168, _depth)?;
10405 fidl::decode!(
10406 fidl::encoding::Array<
10407 fidl::encoding::HandleType<
10408 fidl::NullableHandle,
10409 { fidl::ObjectType::NONE.into_raw() },
10410 2147483648,
10411 >,
10412 3,
10413 >,
10414 fidl::encoding::DefaultFuchsiaResourceDialect,
10415 &mut self.handle_1,
10416 decoder,
10417 offset + 192,
10418 _depth
10419 )?;
10420 Ok(())
10421 }
10422 }
10423
10424 impl fidl::encoding::ResourceTypeMarker for Arrays2d {
10425 type Borrowed<'a> = &'a mut Self;
10426 fn take_or_borrow<'a>(
10427 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
10428 ) -> Self::Borrowed<'a> {
10429 value
10430 }
10431 }
10432
10433 unsafe impl fidl::encoding::TypeMarker for Arrays2d {
10434 type Owned = Self;
10435
10436 #[inline(always)]
10437 fn inline_align(_context: fidl::encoding::Context) -> usize {
10438 8
10439 }
10440
10441 #[inline(always)]
10442 fn inline_size(_context: fidl::encoding::Context) -> usize {
10443 288
10444 }
10445 }
10446
10447 unsafe impl fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>
10448 for &mut Arrays2d
10449 {
10450 #[inline]
10451 unsafe fn encode(
10452 self,
10453 encoder: &mut fidl::encoding::Encoder<
10454 '_,
10455 fidl::encoding::DefaultFuchsiaResourceDialect,
10456 >,
10457 offset: usize,
10458 _depth: fidl::encoding::Depth,
10459 ) -> fidl::Result<()> {
10460 encoder.debug_check_bounds::<Arrays2d>(offset);
10461 fidl::encoding::Encode::<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
10463 (
10464 <fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b),
10465 <fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8),
10466 <fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16),
10467 <fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32),
10468 <fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64),
10469 <fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8),
10470 <fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16),
10471 <fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32),
10472 <fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64),
10473 <fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32),
10474 <fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64),
10475 <fidl::encoding::Array<fidl::encoding::Array<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_handle),
10476 ),
10477 encoder, offset, _depth
10478 )
10479 }
10480 }
10481 unsafe impl<
10482 T0: fidl::encoding::Encode<
10483 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10484 fidl::encoding::DefaultFuchsiaResourceDialect,
10485 >,
10486 T1: fidl::encoding::Encode<
10487 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10488 fidl::encoding::DefaultFuchsiaResourceDialect,
10489 >,
10490 T2: fidl::encoding::Encode<
10491 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10492 fidl::encoding::DefaultFuchsiaResourceDialect,
10493 >,
10494 T3: fidl::encoding::Encode<
10495 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10496 fidl::encoding::DefaultFuchsiaResourceDialect,
10497 >,
10498 T4: fidl::encoding::Encode<
10499 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10500 fidl::encoding::DefaultFuchsiaResourceDialect,
10501 >,
10502 T5: fidl::encoding::Encode<
10503 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10504 fidl::encoding::DefaultFuchsiaResourceDialect,
10505 >,
10506 T6: fidl::encoding::Encode<
10507 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10508 fidl::encoding::DefaultFuchsiaResourceDialect,
10509 >,
10510 T7: fidl::encoding::Encode<
10511 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10512 fidl::encoding::DefaultFuchsiaResourceDialect,
10513 >,
10514 T8: fidl::encoding::Encode<
10515 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10516 fidl::encoding::DefaultFuchsiaResourceDialect,
10517 >,
10518 T9: fidl::encoding::Encode<
10519 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10520 fidl::encoding::DefaultFuchsiaResourceDialect,
10521 >,
10522 T10: fidl::encoding::Encode<
10523 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10524 fidl::encoding::DefaultFuchsiaResourceDialect,
10525 >,
10526 T11: fidl::encoding::Encode<
10527 fidl::encoding::Array<
10528 fidl::encoding::Array<
10529 fidl::encoding::HandleType<
10530 fidl::NullableHandle,
10531 { fidl::ObjectType::NONE.into_raw() },
10532 2147483648,
10533 >,
10534 2,
10535 >,
10536 3,
10537 >,
10538 fidl::encoding::DefaultFuchsiaResourceDialect,
10539 >,
10540 > fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>
10541 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
10542 {
10543 #[inline]
10544 unsafe fn encode(
10545 self,
10546 encoder: &mut fidl::encoding::Encoder<
10547 '_,
10548 fidl::encoding::DefaultFuchsiaResourceDialect,
10549 >,
10550 offset: usize,
10551 depth: fidl::encoding::Depth,
10552 ) -> fidl::Result<()> {
10553 encoder.debug_check_bounds::<Arrays2d>(offset);
10554 unsafe {
10557 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(112);
10558 (ptr as *mut u64).write_unaligned(0);
10559 }
10560 unsafe {
10561 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(136);
10562 (ptr as *mut u64).write_unaligned(0);
10563 }
10564 self.0.encode(encoder, offset + 0, depth)?;
10566 self.1.encode(encoder, offset + 6, depth)?;
10567 self.2.encode(encoder, offset + 12, depth)?;
10568 self.3.encode(encoder, offset + 24, depth)?;
10569 self.4.encode(encoder, offset + 48, depth)?;
10570 self.5.encode(encoder, offset + 96, depth)?;
10571 self.6.encode(encoder, offset + 102, depth)?;
10572 self.7.encode(encoder, offset + 116, depth)?;
10573 self.8.encode(encoder, offset + 144, depth)?;
10574 self.9.encode(encoder, offset + 192, depth)?;
10575 self.10.encode(encoder, offset + 216, depth)?;
10576 self.11.encode(encoder, offset + 264, depth)?;
10577 Ok(())
10578 }
10579 }
10580
10581 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays2d {
10582 #[inline(always)]
10583 fn new_empty() -> Self {
10584 Self {
10585 b: fidl::new_empty!(
10586 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10587 fidl::encoding::DefaultFuchsiaResourceDialect
10588 ),
10589 i8: fidl::new_empty!(
10590 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10591 fidl::encoding::DefaultFuchsiaResourceDialect
10592 ),
10593 i16: fidl::new_empty!(
10594 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10595 fidl::encoding::DefaultFuchsiaResourceDialect
10596 ),
10597 i32: fidl::new_empty!(
10598 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10599 fidl::encoding::DefaultFuchsiaResourceDialect
10600 ),
10601 i64: fidl::new_empty!(
10602 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10603 fidl::encoding::DefaultFuchsiaResourceDialect
10604 ),
10605 u8: fidl::new_empty!(
10606 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10607 fidl::encoding::DefaultFuchsiaResourceDialect
10608 ),
10609 u16: fidl::new_empty!(
10610 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10611 fidl::encoding::DefaultFuchsiaResourceDialect
10612 ),
10613 u32: fidl::new_empty!(
10614 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10615 fidl::encoding::DefaultFuchsiaResourceDialect
10616 ),
10617 u64: fidl::new_empty!(
10618 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10619 fidl::encoding::DefaultFuchsiaResourceDialect
10620 ),
10621 f32: fidl::new_empty!(
10622 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10623 fidl::encoding::DefaultFuchsiaResourceDialect
10624 ),
10625 f64: fidl::new_empty!(
10626 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10627 fidl::encoding::DefaultFuchsiaResourceDialect
10628 ),
10629 handle_handle: fidl::new_empty!(
10630 fidl::encoding::Array<
10631 fidl::encoding::Array<
10632 fidl::encoding::HandleType<
10633 fidl::NullableHandle,
10634 { fidl::ObjectType::NONE.into_raw() },
10635 2147483648,
10636 >,
10637 2,
10638 >,
10639 3,
10640 >,
10641 fidl::encoding::DefaultFuchsiaResourceDialect
10642 ),
10643 }
10644 }
10645
10646 #[inline]
10647 unsafe fn decode(
10648 &mut self,
10649 decoder: &mut fidl::encoding::Decoder<
10650 '_,
10651 fidl::encoding::DefaultFuchsiaResourceDialect,
10652 >,
10653 offset: usize,
10654 _depth: fidl::encoding::Depth,
10655 ) -> fidl::Result<()> {
10656 decoder.debug_check_bounds::<Self>(offset);
10657 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(112) };
10659 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10660 let mask = 0xffff0000u64;
10661 let maskedval = padval & mask;
10662 if maskedval != 0 {
10663 return Err(fidl::Error::NonZeroPadding {
10664 padding_start: offset + 112 + ((mask as u64).trailing_zeros() / 8) as usize,
10665 });
10666 }
10667 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(136) };
10668 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10669 let mask = 0xffffffff00000000u64;
10670 let maskedval = padval & mask;
10671 if maskedval != 0 {
10672 return Err(fidl::Error::NonZeroPadding {
10673 padding_start: offset + 136 + ((mask as u64).trailing_zeros() / 8) as usize,
10674 });
10675 }
10676 fidl::decode!(
10677 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10678 fidl::encoding::DefaultFuchsiaResourceDialect,
10679 &mut self.b,
10680 decoder,
10681 offset + 0,
10682 _depth
10683 )?;
10684 fidl::decode!(
10685 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10686 fidl::encoding::DefaultFuchsiaResourceDialect,
10687 &mut self.i8,
10688 decoder,
10689 offset + 6,
10690 _depth
10691 )?;
10692 fidl::decode!(
10693 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10694 fidl::encoding::DefaultFuchsiaResourceDialect,
10695 &mut self.i16,
10696 decoder,
10697 offset + 12,
10698 _depth
10699 )?;
10700 fidl::decode!(
10701 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10702 fidl::encoding::DefaultFuchsiaResourceDialect,
10703 &mut self.i32,
10704 decoder,
10705 offset + 24,
10706 _depth
10707 )?;
10708 fidl::decode!(
10709 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10710 fidl::encoding::DefaultFuchsiaResourceDialect,
10711 &mut self.i64,
10712 decoder,
10713 offset + 48,
10714 _depth
10715 )?;
10716 fidl::decode!(
10717 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10718 fidl::encoding::DefaultFuchsiaResourceDialect,
10719 &mut self.u8,
10720 decoder,
10721 offset + 96,
10722 _depth
10723 )?;
10724 fidl::decode!(
10725 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10726 fidl::encoding::DefaultFuchsiaResourceDialect,
10727 &mut self.u16,
10728 decoder,
10729 offset + 102,
10730 _depth
10731 )?;
10732 fidl::decode!(
10733 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10734 fidl::encoding::DefaultFuchsiaResourceDialect,
10735 &mut self.u32,
10736 decoder,
10737 offset + 116,
10738 _depth
10739 )?;
10740 fidl::decode!(
10741 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10742 fidl::encoding::DefaultFuchsiaResourceDialect,
10743 &mut self.u64,
10744 decoder,
10745 offset + 144,
10746 _depth
10747 )?;
10748 fidl::decode!(
10749 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10750 fidl::encoding::DefaultFuchsiaResourceDialect,
10751 &mut self.f32,
10752 decoder,
10753 offset + 192,
10754 _depth
10755 )?;
10756 fidl::decode!(
10757 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10758 fidl::encoding::DefaultFuchsiaResourceDialect,
10759 &mut self.f64,
10760 decoder,
10761 offset + 216,
10762 _depth
10763 )?;
10764 fidl::decode!(
10765 fidl::encoding::Array<
10766 fidl::encoding::Array<
10767 fidl::encoding::HandleType<
10768 fidl::NullableHandle,
10769 { fidl::ObjectType::NONE.into_raw() },
10770 2147483648,
10771 >,
10772 2,
10773 >,
10774 3,
10775 >,
10776 fidl::encoding::DefaultFuchsiaResourceDialect,
10777 &mut self.handle_handle,
10778 decoder,
10779 offset + 264,
10780 _depth
10781 )?;
10782 Ok(())
10783 }
10784 }
10785
10786 impl fidl::encoding::ResourceTypeMarker for Handles {
10787 type Borrowed<'a> = &'a mut Self;
10788 fn take_or_borrow<'a>(
10789 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
10790 ) -> Self::Borrowed<'a> {
10791 value
10792 }
10793 }
10794
10795 unsafe impl fidl::encoding::TypeMarker for Handles {
10796 type Owned = Self;
10797
10798 #[inline(always)]
10799 fn inline_align(_context: fidl::encoding::Context) -> usize {
10800 4
10801 }
10802
10803 #[inline(always)]
10804 fn inline_size(_context: fidl::encoding::Context) -> usize {
10805 108
10806 }
10807 }
10808
10809 unsafe impl fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>
10810 for &mut Handles
10811 {
10812 #[inline]
10813 unsafe fn encode(
10814 self,
10815 encoder: &mut fidl::encoding::Encoder<
10816 '_,
10817 fidl::encoding::DefaultFuchsiaResourceDialect,
10818 >,
10819 offset: usize,
10820 _depth: fidl::encoding::Depth,
10821 ) -> fidl::Result<()> {
10822 encoder.debug_check_bounds::<Handles>(offset);
10823 fidl::encoding::Encode::<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
10825 (
10826 <fidl::encoding::HandleType<
10827 fidl::NullableHandle,
10828 { fidl::ObjectType::NONE.into_raw() },
10829 2147483648,
10830 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10831 &mut self.handle_handle,
10832 ),
10833 <fidl::encoding::HandleType<
10834 fidl::Process,
10835 { fidl::ObjectType::PROCESS.into_raw() },
10836 2147483648,
10837 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10838 &mut self.process_handle,
10839 ),
10840 <fidl::encoding::HandleType<
10841 fidl::Thread,
10842 { fidl::ObjectType::THREAD.into_raw() },
10843 2147483648,
10844 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10845 &mut self.thread_handle,
10846 ),
10847 <fidl::encoding::HandleType<
10848 fidl::Vmo,
10849 { fidl::ObjectType::VMO.into_raw() },
10850 2147483648,
10851 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10852 &mut self.vmo_handle
10853 ),
10854 <fidl::encoding::HandleType<
10855 fidl::Event,
10856 { fidl::ObjectType::EVENT.into_raw() },
10857 2147483648,
10858 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10859 &mut self.event_handle,
10860 ),
10861 <fidl::encoding::HandleType<
10862 fidl::Port,
10863 { fidl::ObjectType::PORT.into_raw() },
10864 2147483648,
10865 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10866 &mut self.port_handle
10867 ),
10868 <fidl::encoding::HandleType<
10869 fidl::Socket,
10870 { fidl::ObjectType::SOCKET.into_raw() },
10871 2147483648,
10872 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10873 &mut self.socket_handle,
10874 ),
10875 <fidl::encoding::HandleType<
10876 fidl::EventPair,
10877 { fidl::ObjectType::EVENTPAIR.into_raw() },
10878 2147483648,
10879 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10880 &mut self.eventpair_handle,
10881 ),
10882 <fidl::encoding::HandleType<
10883 fidl::Job,
10884 { fidl::ObjectType::JOB.into_raw() },
10885 2147483648,
10886 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10887 &mut self.job_handle
10888 ),
10889 <fidl::encoding::HandleType<
10890 fidl::Vmar,
10891 { fidl::ObjectType::VMAR.into_raw() },
10892 2147483648,
10893 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10894 &mut self.vmar_handle
10895 ),
10896 <fidl::encoding::HandleType<
10897 fidl::Fifo,
10898 { fidl::ObjectType::FIFO.into_raw() },
10899 2147483648,
10900 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10901 &mut self.fifo_handle
10902 ),
10903 <fidl::encoding::HandleType<
10904 fidl::Timer,
10905 { fidl::ObjectType::TIMER.into_raw() },
10906 2147483648,
10907 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10908 &mut self.timer_handle,
10909 ),
10910 <fidl::encoding::Optional<
10911 fidl::encoding::HandleType<
10912 fidl::NullableHandle,
10913 { fidl::ObjectType::NONE.into_raw() },
10914 2147483648,
10915 >,
10916 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10917 &mut self.nullable_handle_handle,
10918 ),
10919 <fidl::encoding::Optional<
10920 fidl::encoding::HandleType<
10921 fidl::Process,
10922 { fidl::ObjectType::PROCESS.into_raw() },
10923 2147483648,
10924 >,
10925 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10926 &mut self.nullable_process_handle,
10927 ),
10928 <fidl::encoding::Optional<
10929 fidl::encoding::HandleType<
10930 fidl::Thread,
10931 { fidl::ObjectType::THREAD.into_raw() },
10932 2147483648,
10933 >,
10934 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10935 &mut self.nullable_thread_handle,
10936 ),
10937 <fidl::encoding::Optional<
10938 fidl::encoding::HandleType<
10939 fidl::Vmo,
10940 { fidl::ObjectType::VMO.into_raw() },
10941 2147483648,
10942 >,
10943 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10944 &mut self.nullable_vmo_handle,
10945 ),
10946 <fidl::encoding::Optional<
10947 fidl::encoding::HandleType<
10948 fidl::Channel,
10949 { fidl::ObjectType::CHANNEL.into_raw() },
10950 2147483648,
10951 >,
10952 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10953 &mut self.nullable_channel_handle,
10954 ),
10955 <fidl::encoding::Optional<
10956 fidl::encoding::HandleType<
10957 fidl::Event,
10958 { fidl::ObjectType::EVENT.into_raw() },
10959 2147483648,
10960 >,
10961 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10962 &mut self.nullable_event_handle,
10963 ),
10964 <fidl::encoding::Optional<
10965 fidl::encoding::HandleType<
10966 fidl::Port,
10967 { fidl::ObjectType::PORT.into_raw() },
10968 2147483648,
10969 >,
10970 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10971 &mut self.nullable_port_handle,
10972 ),
10973 <fidl::encoding::Optional<
10974 fidl::encoding::HandleType<
10975 fidl::Interrupt,
10976 { fidl::ObjectType::INTERRUPT.into_raw() },
10977 2147483648,
10978 >,
10979 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10980 &mut self.nullable_interrupt_handle,
10981 ),
10982 <fidl::encoding::Optional<
10983 fidl::encoding::HandleType<
10984 fidl::DebugLog,
10985 { fidl::ObjectType::DEBUGLOG.into_raw() },
10986 2147483648,
10987 >,
10988 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10989 &mut self.nullable_log_handle,
10990 ),
10991 <fidl::encoding::Optional<
10992 fidl::encoding::HandleType<
10993 fidl::Socket,
10994 { fidl::ObjectType::SOCKET.into_raw() },
10995 2147483648,
10996 >,
10997 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10998 &mut self.nullable_socket_handle,
10999 ),
11000 <fidl::encoding::Optional<
11001 fidl::encoding::HandleType<
11002 fidl::EventPair,
11003 { fidl::ObjectType::EVENTPAIR.into_raw() },
11004 2147483648,
11005 >,
11006 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11007 &mut self.nullable_eventpair_handle,
11008 ),
11009 <fidl::encoding::Optional<
11010 fidl::encoding::HandleType<
11011 fidl::Job,
11012 { fidl::ObjectType::JOB.into_raw() },
11013 2147483648,
11014 >,
11015 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11016 &mut self.nullable_job_handle,
11017 ),
11018 <fidl::encoding::Optional<
11019 fidl::encoding::HandleType<
11020 fidl::Vmar,
11021 { fidl::ObjectType::VMAR.into_raw() },
11022 2147483648,
11023 >,
11024 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11025 &mut self.nullable_vmar_handle,
11026 ),
11027 <fidl::encoding::Optional<
11028 fidl::encoding::HandleType<
11029 fidl::Fifo,
11030 { fidl::ObjectType::FIFO.into_raw() },
11031 2147483648,
11032 >,
11033 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11034 &mut self.nullable_fifo_handle,
11035 ),
11036 <fidl::encoding::Optional<
11037 fidl::encoding::HandleType<
11038 fidl::Timer,
11039 { fidl::ObjectType::TIMER.into_raw() },
11040 2147483648,
11041 >,
11042 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11043 &mut self.nullable_timer_handle,
11044 ),
11045 ),
11046 encoder,
11047 offset,
11048 _depth,
11049 )
11050 }
11051 }
11052 unsafe impl<
11053 T0: fidl::encoding::Encode<
11054 fidl::encoding::HandleType<
11055 fidl::NullableHandle,
11056 { fidl::ObjectType::NONE.into_raw() },
11057 2147483648,
11058 >,
11059 fidl::encoding::DefaultFuchsiaResourceDialect,
11060 >,
11061 T1: fidl::encoding::Encode<
11062 fidl::encoding::HandleType<
11063 fidl::Process,
11064 { fidl::ObjectType::PROCESS.into_raw() },
11065 2147483648,
11066 >,
11067 fidl::encoding::DefaultFuchsiaResourceDialect,
11068 >,
11069 T2: fidl::encoding::Encode<
11070 fidl::encoding::HandleType<
11071 fidl::Thread,
11072 { fidl::ObjectType::THREAD.into_raw() },
11073 2147483648,
11074 >,
11075 fidl::encoding::DefaultFuchsiaResourceDialect,
11076 >,
11077 T3: fidl::encoding::Encode<
11078 fidl::encoding::HandleType<
11079 fidl::Vmo,
11080 { fidl::ObjectType::VMO.into_raw() },
11081 2147483648,
11082 >,
11083 fidl::encoding::DefaultFuchsiaResourceDialect,
11084 >,
11085 T4: fidl::encoding::Encode<
11086 fidl::encoding::HandleType<
11087 fidl::Event,
11088 { fidl::ObjectType::EVENT.into_raw() },
11089 2147483648,
11090 >,
11091 fidl::encoding::DefaultFuchsiaResourceDialect,
11092 >,
11093 T5: fidl::encoding::Encode<
11094 fidl::encoding::HandleType<
11095 fidl::Port,
11096 { fidl::ObjectType::PORT.into_raw() },
11097 2147483648,
11098 >,
11099 fidl::encoding::DefaultFuchsiaResourceDialect,
11100 >,
11101 T6: fidl::encoding::Encode<
11102 fidl::encoding::HandleType<
11103 fidl::Socket,
11104 { fidl::ObjectType::SOCKET.into_raw() },
11105 2147483648,
11106 >,
11107 fidl::encoding::DefaultFuchsiaResourceDialect,
11108 >,
11109 T7: fidl::encoding::Encode<
11110 fidl::encoding::HandleType<
11111 fidl::EventPair,
11112 { fidl::ObjectType::EVENTPAIR.into_raw() },
11113 2147483648,
11114 >,
11115 fidl::encoding::DefaultFuchsiaResourceDialect,
11116 >,
11117 T8: fidl::encoding::Encode<
11118 fidl::encoding::HandleType<
11119 fidl::Job,
11120 { fidl::ObjectType::JOB.into_raw() },
11121 2147483648,
11122 >,
11123 fidl::encoding::DefaultFuchsiaResourceDialect,
11124 >,
11125 T9: fidl::encoding::Encode<
11126 fidl::encoding::HandleType<
11127 fidl::Vmar,
11128 { fidl::ObjectType::VMAR.into_raw() },
11129 2147483648,
11130 >,
11131 fidl::encoding::DefaultFuchsiaResourceDialect,
11132 >,
11133 T10: fidl::encoding::Encode<
11134 fidl::encoding::HandleType<
11135 fidl::Fifo,
11136 { fidl::ObjectType::FIFO.into_raw() },
11137 2147483648,
11138 >,
11139 fidl::encoding::DefaultFuchsiaResourceDialect,
11140 >,
11141 T11: fidl::encoding::Encode<
11142 fidl::encoding::HandleType<
11143 fidl::Timer,
11144 { fidl::ObjectType::TIMER.into_raw() },
11145 2147483648,
11146 >,
11147 fidl::encoding::DefaultFuchsiaResourceDialect,
11148 >,
11149 T12: fidl::encoding::Encode<
11150 fidl::encoding::Optional<
11151 fidl::encoding::HandleType<
11152 fidl::NullableHandle,
11153 { fidl::ObjectType::NONE.into_raw() },
11154 2147483648,
11155 >,
11156 >,
11157 fidl::encoding::DefaultFuchsiaResourceDialect,
11158 >,
11159 T13: fidl::encoding::Encode<
11160 fidl::encoding::Optional<
11161 fidl::encoding::HandleType<
11162 fidl::Process,
11163 { fidl::ObjectType::PROCESS.into_raw() },
11164 2147483648,
11165 >,
11166 >,
11167 fidl::encoding::DefaultFuchsiaResourceDialect,
11168 >,
11169 T14: fidl::encoding::Encode<
11170 fidl::encoding::Optional<
11171 fidl::encoding::HandleType<
11172 fidl::Thread,
11173 { fidl::ObjectType::THREAD.into_raw() },
11174 2147483648,
11175 >,
11176 >,
11177 fidl::encoding::DefaultFuchsiaResourceDialect,
11178 >,
11179 T15: fidl::encoding::Encode<
11180 fidl::encoding::Optional<
11181 fidl::encoding::HandleType<
11182 fidl::Vmo,
11183 { fidl::ObjectType::VMO.into_raw() },
11184 2147483648,
11185 >,
11186 >,
11187 fidl::encoding::DefaultFuchsiaResourceDialect,
11188 >,
11189 T16: fidl::encoding::Encode<
11190 fidl::encoding::Optional<
11191 fidl::encoding::HandleType<
11192 fidl::Channel,
11193 { fidl::ObjectType::CHANNEL.into_raw() },
11194 2147483648,
11195 >,
11196 >,
11197 fidl::encoding::DefaultFuchsiaResourceDialect,
11198 >,
11199 T17: fidl::encoding::Encode<
11200 fidl::encoding::Optional<
11201 fidl::encoding::HandleType<
11202 fidl::Event,
11203 { fidl::ObjectType::EVENT.into_raw() },
11204 2147483648,
11205 >,
11206 >,
11207 fidl::encoding::DefaultFuchsiaResourceDialect,
11208 >,
11209 T18: fidl::encoding::Encode<
11210 fidl::encoding::Optional<
11211 fidl::encoding::HandleType<
11212 fidl::Port,
11213 { fidl::ObjectType::PORT.into_raw() },
11214 2147483648,
11215 >,
11216 >,
11217 fidl::encoding::DefaultFuchsiaResourceDialect,
11218 >,
11219 T19: fidl::encoding::Encode<
11220 fidl::encoding::Optional<
11221 fidl::encoding::HandleType<
11222 fidl::Interrupt,
11223 { fidl::ObjectType::INTERRUPT.into_raw() },
11224 2147483648,
11225 >,
11226 >,
11227 fidl::encoding::DefaultFuchsiaResourceDialect,
11228 >,
11229 T20: fidl::encoding::Encode<
11230 fidl::encoding::Optional<
11231 fidl::encoding::HandleType<
11232 fidl::DebugLog,
11233 { fidl::ObjectType::DEBUGLOG.into_raw() },
11234 2147483648,
11235 >,
11236 >,
11237 fidl::encoding::DefaultFuchsiaResourceDialect,
11238 >,
11239 T21: fidl::encoding::Encode<
11240 fidl::encoding::Optional<
11241 fidl::encoding::HandleType<
11242 fidl::Socket,
11243 { fidl::ObjectType::SOCKET.into_raw() },
11244 2147483648,
11245 >,
11246 >,
11247 fidl::encoding::DefaultFuchsiaResourceDialect,
11248 >,
11249 T22: fidl::encoding::Encode<
11250 fidl::encoding::Optional<
11251 fidl::encoding::HandleType<
11252 fidl::EventPair,
11253 { fidl::ObjectType::EVENTPAIR.into_raw() },
11254 2147483648,
11255 >,
11256 >,
11257 fidl::encoding::DefaultFuchsiaResourceDialect,
11258 >,
11259 T23: fidl::encoding::Encode<
11260 fidl::encoding::Optional<
11261 fidl::encoding::HandleType<
11262 fidl::Job,
11263 { fidl::ObjectType::JOB.into_raw() },
11264 2147483648,
11265 >,
11266 >,
11267 fidl::encoding::DefaultFuchsiaResourceDialect,
11268 >,
11269 T24: fidl::encoding::Encode<
11270 fidl::encoding::Optional<
11271 fidl::encoding::HandleType<
11272 fidl::Vmar,
11273 { fidl::ObjectType::VMAR.into_raw() },
11274 2147483648,
11275 >,
11276 >,
11277 fidl::encoding::DefaultFuchsiaResourceDialect,
11278 >,
11279 T25: fidl::encoding::Encode<
11280 fidl::encoding::Optional<
11281 fidl::encoding::HandleType<
11282 fidl::Fifo,
11283 { fidl::ObjectType::FIFO.into_raw() },
11284 2147483648,
11285 >,
11286 >,
11287 fidl::encoding::DefaultFuchsiaResourceDialect,
11288 >,
11289 T26: fidl::encoding::Encode<
11290 fidl::encoding::Optional<
11291 fidl::encoding::HandleType<
11292 fidl::Timer,
11293 { fidl::ObjectType::TIMER.into_raw() },
11294 2147483648,
11295 >,
11296 >,
11297 fidl::encoding::DefaultFuchsiaResourceDialect,
11298 >,
11299 > fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>
11300 for (
11301 T0,
11302 T1,
11303 T2,
11304 T3,
11305 T4,
11306 T5,
11307 T6,
11308 T7,
11309 T8,
11310 T9,
11311 T10,
11312 T11,
11313 T12,
11314 T13,
11315 T14,
11316 T15,
11317 T16,
11318 T17,
11319 T18,
11320 T19,
11321 T20,
11322 T21,
11323 T22,
11324 T23,
11325 T24,
11326 T25,
11327 T26,
11328 )
11329 {
11330 #[inline]
11331 unsafe fn encode(
11332 self,
11333 encoder: &mut fidl::encoding::Encoder<
11334 '_,
11335 fidl::encoding::DefaultFuchsiaResourceDialect,
11336 >,
11337 offset: usize,
11338 depth: fidl::encoding::Depth,
11339 ) -> fidl::Result<()> {
11340 encoder.debug_check_bounds::<Handles>(offset);
11341 self.0.encode(encoder, offset + 0, depth)?;
11345 self.1.encode(encoder, offset + 4, depth)?;
11346 self.2.encode(encoder, offset + 8, depth)?;
11347 self.3.encode(encoder, offset + 12, depth)?;
11348 self.4.encode(encoder, offset + 16, depth)?;
11349 self.5.encode(encoder, offset + 20, depth)?;
11350 self.6.encode(encoder, offset + 24, depth)?;
11351 self.7.encode(encoder, offset + 28, depth)?;
11352 self.8.encode(encoder, offset + 32, depth)?;
11353 self.9.encode(encoder, offset + 36, depth)?;
11354 self.10.encode(encoder, offset + 40, depth)?;
11355 self.11.encode(encoder, offset + 44, depth)?;
11356 self.12.encode(encoder, offset + 48, depth)?;
11357 self.13.encode(encoder, offset + 52, depth)?;
11358 self.14.encode(encoder, offset + 56, depth)?;
11359 self.15.encode(encoder, offset + 60, depth)?;
11360 self.16.encode(encoder, offset + 64, depth)?;
11361 self.17.encode(encoder, offset + 68, depth)?;
11362 self.18.encode(encoder, offset + 72, depth)?;
11363 self.19.encode(encoder, offset + 76, depth)?;
11364 self.20.encode(encoder, offset + 80, depth)?;
11365 self.21.encode(encoder, offset + 84, depth)?;
11366 self.22.encode(encoder, offset + 88, depth)?;
11367 self.23.encode(encoder, offset + 92, depth)?;
11368 self.24.encode(encoder, offset + 96, depth)?;
11369 self.25.encode(encoder, offset + 100, depth)?;
11370 self.26.encode(encoder, offset + 104, depth)?;
11371 Ok(())
11372 }
11373 }
11374
11375 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Handles {
11376 #[inline(always)]
11377 fn new_empty() -> Self {
11378 Self {
11379 handle_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11380 process_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Process, { fidl::ObjectType::PROCESS.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11381 thread_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Thread, { fidl::ObjectType::THREAD.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11382 vmo_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Vmo, { fidl::ObjectType::VMO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11383 event_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Event, { fidl::ObjectType::EVENT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11384 port_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Port, { fidl::ObjectType::PORT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11385 socket_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Socket, { fidl::ObjectType::SOCKET.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11386 eventpair_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::EventPair, { fidl::ObjectType::EVENTPAIR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11387 job_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Job, { fidl::ObjectType::JOB.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11388 vmar_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Vmar, { fidl::ObjectType::VMAR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11389 fifo_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Fifo, { fidl::ObjectType::FIFO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11390 timer_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Timer, { fidl::ObjectType::TIMER.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11391 nullable_handle_handle: fidl::new_empty!(
11392 fidl::encoding::Optional<
11393 fidl::encoding::HandleType<
11394 fidl::NullableHandle,
11395 { fidl::ObjectType::NONE.into_raw() },
11396 2147483648,
11397 >,
11398 >,
11399 fidl::encoding::DefaultFuchsiaResourceDialect
11400 ),
11401 nullable_process_handle: fidl::new_empty!(
11402 fidl::encoding::Optional<
11403 fidl::encoding::HandleType<
11404 fidl::Process,
11405 { fidl::ObjectType::PROCESS.into_raw() },
11406 2147483648,
11407 >,
11408 >,
11409 fidl::encoding::DefaultFuchsiaResourceDialect
11410 ),
11411 nullable_thread_handle: fidl::new_empty!(
11412 fidl::encoding::Optional<
11413 fidl::encoding::HandleType<
11414 fidl::Thread,
11415 { fidl::ObjectType::THREAD.into_raw() },
11416 2147483648,
11417 >,
11418 >,
11419 fidl::encoding::DefaultFuchsiaResourceDialect
11420 ),
11421 nullable_vmo_handle: fidl::new_empty!(
11422 fidl::encoding::Optional<
11423 fidl::encoding::HandleType<
11424 fidl::Vmo,
11425 { fidl::ObjectType::VMO.into_raw() },
11426 2147483648,
11427 >,
11428 >,
11429 fidl::encoding::DefaultFuchsiaResourceDialect
11430 ),
11431 nullable_channel_handle: fidl::new_empty!(
11432 fidl::encoding::Optional<
11433 fidl::encoding::HandleType<
11434 fidl::Channel,
11435 { fidl::ObjectType::CHANNEL.into_raw() },
11436 2147483648,
11437 >,
11438 >,
11439 fidl::encoding::DefaultFuchsiaResourceDialect
11440 ),
11441 nullable_event_handle: fidl::new_empty!(
11442 fidl::encoding::Optional<
11443 fidl::encoding::HandleType<
11444 fidl::Event,
11445 { fidl::ObjectType::EVENT.into_raw() },
11446 2147483648,
11447 >,
11448 >,
11449 fidl::encoding::DefaultFuchsiaResourceDialect
11450 ),
11451 nullable_port_handle: fidl::new_empty!(
11452 fidl::encoding::Optional<
11453 fidl::encoding::HandleType<
11454 fidl::Port,
11455 { fidl::ObjectType::PORT.into_raw() },
11456 2147483648,
11457 >,
11458 >,
11459 fidl::encoding::DefaultFuchsiaResourceDialect
11460 ),
11461 nullable_interrupt_handle: fidl::new_empty!(
11462 fidl::encoding::Optional<
11463 fidl::encoding::HandleType<
11464 fidl::Interrupt,
11465 { fidl::ObjectType::INTERRUPT.into_raw() },
11466 2147483648,
11467 >,
11468 >,
11469 fidl::encoding::DefaultFuchsiaResourceDialect
11470 ),
11471 nullable_log_handle: fidl::new_empty!(
11472 fidl::encoding::Optional<
11473 fidl::encoding::HandleType<
11474 fidl::DebugLog,
11475 { fidl::ObjectType::DEBUGLOG.into_raw() },
11476 2147483648,
11477 >,
11478 >,
11479 fidl::encoding::DefaultFuchsiaResourceDialect
11480 ),
11481 nullable_socket_handle: fidl::new_empty!(
11482 fidl::encoding::Optional<
11483 fidl::encoding::HandleType<
11484 fidl::Socket,
11485 { fidl::ObjectType::SOCKET.into_raw() },
11486 2147483648,
11487 >,
11488 >,
11489 fidl::encoding::DefaultFuchsiaResourceDialect
11490 ),
11491 nullable_eventpair_handle: fidl::new_empty!(
11492 fidl::encoding::Optional<
11493 fidl::encoding::HandleType<
11494 fidl::EventPair,
11495 { fidl::ObjectType::EVENTPAIR.into_raw() },
11496 2147483648,
11497 >,
11498 >,
11499 fidl::encoding::DefaultFuchsiaResourceDialect
11500 ),
11501 nullable_job_handle: fidl::new_empty!(
11502 fidl::encoding::Optional<
11503 fidl::encoding::HandleType<
11504 fidl::Job,
11505 { fidl::ObjectType::JOB.into_raw() },
11506 2147483648,
11507 >,
11508 >,
11509 fidl::encoding::DefaultFuchsiaResourceDialect
11510 ),
11511 nullable_vmar_handle: fidl::new_empty!(
11512 fidl::encoding::Optional<
11513 fidl::encoding::HandleType<
11514 fidl::Vmar,
11515 { fidl::ObjectType::VMAR.into_raw() },
11516 2147483648,
11517 >,
11518 >,
11519 fidl::encoding::DefaultFuchsiaResourceDialect
11520 ),
11521 nullable_fifo_handle: fidl::new_empty!(
11522 fidl::encoding::Optional<
11523 fidl::encoding::HandleType<
11524 fidl::Fifo,
11525 { fidl::ObjectType::FIFO.into_raw() },
11526 2147483648,
11527 >,
11528 >,
11529 fidl::encoding::DefaultFuchsiaResourceDialect
11530 ),
11531 nullable_timer_handle: fidl::new_empty!(
11532 fidl::encoding::Optional<
11533 fidl::encoding::HandleType<
11534 fidl::Timer,
11535 { fidl::ObjectType::TIMER.into_raw() },
11536 2147483648,
11537 >,
11538 >,
11539 fidl::encoding::DefaultFuchsiaResourceDialect
11540 ),
11541 }
11542 }
11543
11544 #[inline]
11545 unsafe fn decode(
11546 &mut self,
11547 decoder: &mut fidl::encoding::Decoder<
11548 '_,
11549 fidl::encoding::DefaultFuchsiaResourceDialect,
11550 >,
11551 offset: usize,
11552 _depth: fidl::encoding::Depth,
11553 ) -> fidl::Result<()> {
11554 decoder.debug_check_bounds::<Self>(offset);
11555 fidl::decode!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.handle_handle, decoder, offset + 0, _depth)?;
11557 fidl::decode!(fidl::encoding::HandleType<fidl::Process, { fidl::ObjectType::PROCESS.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.process_handle, decoder, offset + 4, _depth)?;
11558 fidl::decode!(fidl::encoding::HandleType<fidl::Thread, { fidl::ObjectType::THREAD.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.thread_handle, decoder, offset + 8, _depth)?;
11559 fidl::decode!(fidl::encoding::HandleType<fidl::Vmo, { fidl::ObjectType::VMO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.vmo_handle, decoder, offset + 12, _depth)?;
11560 fidl::decode!(fidl::encoding::HandleType<fidl::Event, { fidl::ObjectType::EVENT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.event_handle, decoder, offset + 16, _depth)?;
11561 fidl::decode!(fidl::encoding::HandleType<fidl::Port, { fidl::ObjectType::PORT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.port_handle, decoder, offset + 20, _depth)?;
11562 fidl::decode!(fidl::encoding::HandleType<fidl::Socket, { fidl::ObjectType::SOCKET.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.socket_handle, decoder, offset + 24, _depth)?;
11563 fidl::decode!(fidl::encoding::HandleType<fidl::EventPair, { fidl::ObjectType::EVENTPAIR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.eventpair_handle, decoder, offset + 28, _depth)?;
11564 fidl::decode!(fidl::encoding::HandleType<fidl::Job, { fidl::ObjectType::JOB.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.job_handle, decoder, offset + 32, _depth)?;
11565 fidl::decode!(fidl::encoding::HandleType<fidl::Vmar, { fidl::ObjectType::VMAR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.vmar_handle, decoder, offset + 36, _depth)?;
11566 fidl::decode!(fidl::encoding::HandleType<fidl::Fifo, { fidl::ObjectType::FIFO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.fifo_handle, decoder, offset + 40, _depth)?;
11567 fidl::decode!(fidl::encoding::HandleType<fidl::Timer, { fidl::ObjectType::TIMER.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.timer_handle, decoder, offset + 44, _depth)?;
11568 fidl::decode!(
11569 fidl::encoding::Optional<
11570 fidl::encoding::HandleType<
11571 fidl::NullableHandle,
11572 { fidl::ObjectType::NONE.into_raw() },
11573 2147483648,
11574 >,
11575 >,
11576 fidl::encoding::DefaultFuchsiaResourceDialect,
11577 &mut self.nullable_handle_handle,
11578 decoder,
11579 offset + 48,
11580 _depth
11581 )?;
11582 fidl::decode!(
11583 fidl::encoding::Optional<
11584 fidl::encoding::HandleType<
11585 fidl::Process,
11586 { fidl::ObjectType::PROCESS.into_raw() },
11587 2147483648,
11588 >,
11589 >,
11590 fidl::encoding::DefaultFuchsiaResourceDialect,
11591 &mut self.nullable_process_handle,
11592 decoder,
11593 offset + 52,
11594 _depth
11595 )?;
11596 fidl::decode!(
11597 fidl::encoding::Optional<
11598 fidl::encoding::HandleType<
11599 fidl::Thread,
11600 { fidl::ObjectType::THREAD.into_raw() },
11601 2147483648,
11602 >,
11603 >,
11604 fidl::encoding::DefaultFuchsiaResourceDialect,
11605 &mut self.nullable_thread_handle,
11606 decoder,
11607 offset + 56,
11608 _depth
11609 )?;
11610 fidl::decode!(
11611 fidl::encoding::Optional<
11612 fidl::encoding::HandleType<
11613 fidl::Vmo,
11614 { fidl::ObjectType::VMO.into_raw() },
11615 2147483648,
11616 >,
11617 >,
11618 fidl::encoding::DefaultFuchsiaResourceDialect,
11619 &mut self.nullable_vmo_handle,
11620 decoder,
11621 offset + 60,
11622 _depth
11623 )?;
11624 fidl::decode!(
11625 fidl::encoding::Optional<
11626 fidl::encoding::HandleType<
11627 fidl::Channel,
11628 { fidl::ObjectType::CHANNEL.into_raw() },
11629 2147483648,
11630 >,
11631 >,
11632 fidl::encoding::DefaultFuchsiaResourceDialect,
11633 &mut self.nullable_channel_handle,
11634 decoder,
11635 offset + 64,
11636 _depth
11637 )?;
11638 fidl::decode!(
11639 fidl::encoding::Optional<
11640 fidl::encoding::HandleType<
11641 fidl::Event,
11642 { fidl::ObjectType::EVENT.into_raw() },
11643 2147483648,
11644 >,
11645 >,
11646 fidl::encoding::DefaultFuchsiaResourceDialect,
11647 &mut self.nullable_event_handle,
11648 decoder,
11649 offset + 68,
11650 _depth
11651 )?;
11652 fidl::decode!(
11653 fidl::encoding::Optional<
11654 fidl::encoding::HandleType<
11655 fidl::Port,
11656 { fidl::ObjectType::PORT.into_raw() },
11657 2147483648,
11658 >,
11659 >,
11660 fidl::encoding::DefaultFuchsiaResourceDialect,
11661 &mut self.nullable_port_handle,
11662 decoder,
11663 offset + 72,
11664 _depth
11665 )?;
11666 fidl::decode!(
11667 fidl::encoding::Optional<
11668 fidl::encoding::HandleType<
11669 fidl::Interrupt,
11670 { fidl::ObjectType::INTERRUPT.into_raw() },
11671 2147483648,
11672 >,
11673 >,
11674 fidl::encoding::DefaultFuchsiaResourceDialect,
11675 &mut self.nullable_interrupt_handle,
11676 decoder,
11677 offset + 76,
11678 _depth
11679 )?;
11680 fidl::decode!(
11681 fidl::encoding::Optional<
11682 fidl::encoding::HandleType<
11683 fidl::DebugLog,
11684 { fidl::ObjectType::DEBUGLOG.into_raw() },
11685 2147483648,
11686 >,
11687 >,
11688 fidl::encoding::DefaultFuchsiaResourceDialect,
11689 &mut self.nullable_log_handle,
11690 decoder,
11691 offset + 80,
11692 _depth
11693 )?;
11694 fidl::decode!(
11695 fidl::encoding::Optional<
11696 fidl::encoding::HandleType<
11697 fidl::Socket,
11698 { fidl::ObjectType::SOCKET.into_raw() },
11699 2147483648,
11700 >,
11701 >,
11702 fidl::encoding::DefaultFuchsiaResourceDialect,
11703 &mut self.nullable_socket_handle,
11704 decoder,
11705 offset + 84,
11706 _depth
11707 )?;
11708 fidl::decode!(
11709 fidl::encoding::Optional<
11710 fidl::encoding::HandleType<
11711 fidl::EventPair,
11712 { fidl::ObjectType::EVENTPAIR.into_raw() },
11713 2147483648,
11714 >,
11715 >,
11716 fidl::encoding::DefaultFuchsiaResourceDialect,
11717 &mut self.nullable_eventpair_handle,
11718 decoder,
11719 offset + 88,
11720 _depth
11721 )?;
11722 fidl::decode!(
11723 fidl::encoding::Optional<
11724 fidl::encoding::HandleType<
11725 fidl::Job,
11726 { fidl::ObjectType::JOB.into_raw() },
11727 2147483648,
11728 >,
11729 >,
11730 fidl::encoding::DefaultFuchsiaResourceDialect,
11731 &mut self.nullable_job_handle,
11732 decoder,
11733 offset + 92,
11734 _depth
11735 )?;
11736 fidl::decode!(
11737 fidl::encoding::Optional<
11738 fidl::encoding::HandleType<
11739 fidl::Vmar,
11740 { fidl::ObjectType::VMAR.into_raw() },
11741 2147483648,
11742 >,
11743 >,
11744 fidl::encoding::DefaultFuchsiaResourceDialect,
11745 &mut self.nullable_vmar_handle,
11746 decoder,
11747 offset + 96,
11748 _depth
11749 )?;
11750 fidl::decode!(
11751 fidl::encoding::Optional<
11752 fidl::encoding::HandleType<
11753 fidl::Fifo,
11754 { fidl::ObjectType::FIFO.into_raw() },
11755 2147483648,
11756 >,
11757 >,
11758 fidl::encoding::DefaultFuchsiaResourceDialect,
11759 &mut self.nullable_fifo_handle,
11760 decoder,
11761 offset + 100,
11762 _depth
11763 )?;
11764 fidl::decode!(
11765 fidl::encoding::Optional<
11766 fidl::encoding::HandleType<
11767 fidl::Timer,
11768 { fidl::ObjectType::TIMER.into_raw() },
11769 2147483648,
11770 >,
11771 >,
11772 fidl::encoding::DefaultFuchsiaResourceDialect,
11773 &mut self.nullable_timer_handle,
11774 decoder,
11775 offset + 104,
11776 _depth
11777 )?;
11778 Ok(())
11779 }
11780 }
11781
11782 impl fidl::encoding::ResourceTypeMarker for Vectors {
11783 type Borrowed<'a> = &'a mut Self;
11784 fn take_or_borrow<'a>(
11785 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
11786 ) -> Self::Borrowed<'a> {
11787 value
11788 }
11789 }
11790
11791 unsafe impl fidl::encoding::TypeMarker for Vectors {
11792 type Owned = Self;
11793
11794 #[inline(always)]
11795 fn inline_align(_context: fidl::encoding::Context) -> usize {
11796 8
11797 }
11798
11799 #[inline(always)]
11800 fn inline_size(_context: fidl::encoding::Context) -> usize {
11801 1920
11802 }
11803 }
11804
11805 unsafe impl fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>
11806 for &mut Vectors
11807 {
11808 #[inline]
11809 unsafe fn encode(
11810 self,
11811 encoder: &mut fidl::encoding::Encoder<
11812 '_,
11813 fidl::encoding::DefaultFuchsiaResourceDialect,
11814 >,
11815 offset: usize,
11816 _depth: fidl::encoding::Depth,
11817 ) -> fidl::Result<()> {
11818 encoder.debug_check_bounds::<Vectors>(offset);
11819 fidl::encoding::Encode::<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
11821 (
11822 <fidl::encoding::UnboundedVector<bool> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_0),
11823 <fidl::encoding::UnboundedVector<i8> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_0),
11824 <fidl::encoding::UnboundedVector<i16> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_0),
11825 <fidl::encoding::UnboundedVector<i32> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_0),
11826 <fidl::encoding::UnboundedVector<i64> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_0),
11827 <fidl::encoding::UnboundedVector<u8> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_0),
11828 <fidl::encoding::UnboundedVector<u16> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_0),
11829 <fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_0),
11830 <fidl::encoding::UnboundedVector<u64> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_0),
11831 <fidl::encoding::UnboundedVector<f32> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_0),
11832 <fidl::encoding::UnboundedVector<f64> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_0),
11833 <fidl::encoding::UnboundedVector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_0),
11834 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_1),
11835 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_1),
11836 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_1),
11837 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_1),
11838 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_1),
11839 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_1),
11840 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_1),
11841 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_1),
11842 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_1),
11843 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_1),
11844 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_1),
11845 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_1),
11846 <fidl::encoding::Vector<bool, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_0),
11847 <fidl::encoding::Vector<i8, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_0),
11848 <fidl::encoding::Vector<i16, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_0),
11849 <fidl::encoding::Vector<i32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_0),
11850 <fidl::encoding::Vector<i64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_0),
11851 <fidl::encoding::Vector<u8, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_0),
11852 <fidl::encoding::Vector<u16, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_0),
11853 <fidl::encoding::Vector<u32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_0),
11854 <fidl::encoding::Vector<u64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_0),
11855 <fidl::encoding::Vector<f32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_0),
11856 <fidl::encoding::Vector<f64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_0),
11857 <fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 1> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_sized_0),
11858 <fidl::encoding::Vector<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_1),
11859 <fidl::encoding::Vector<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_1),
11860 <fidl::encoding::Vector<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_1),
11861 <fidl::encoding::Vector<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_1),
11862 <fidl::encoding::Vector<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_1),
11863 <fidl::encoding::Vector<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_1),
11864 <fidl::encoding::Vector<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_1),
11865 <fidl::encoding::Vector<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_1),
11866 <fidl::encoding::Vector<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_1),
11867 <fidl::encoding::Vector<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_1),
11868 <fidl::encoding::Vector<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_1),
11869 <fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_sized_1),
11870 <fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_2),
11871 <fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_2),
11872 <fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_2),
11873 <fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_2),
11874 <fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_2),
11875 <fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_2),
11876 <fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_2),
11877 <fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_2),
11878 <fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_2),
11879 <fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_2),
11880 <fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_2),
11881 <fidl::encoding::Vector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>, 3> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_sized_2),
11882 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_0),
11883 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_0),
11884 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_0),
11885 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_0),
11886 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_0),
11887 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_0),
11888 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_0),
11889 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_0),
11890 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_0),
11891 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_0),
11892 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_0),
11893 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 1>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_0),
11894 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_1),
11895 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_1),
11896 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_1),
11897 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_1),
11898 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_1),
11899 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_1),
11900 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_1),
11901 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_1),
11902 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_1),
11903 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_1),
11904 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_1),
11905 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_1),
11906 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_0),
11907 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_0),
11908 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_0),
11909 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_0),
11910 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_0),
11911 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_0),
11912 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_0),
11913 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_0),
11914 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_0),
11915 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_0),
11916 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_0),
11917 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 1>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_sized_0),
11918 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_1),
11919 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_1),
11920 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_1),
11921 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_1),
11922 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_1),
11923 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_1),
11924 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_1),
11925 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_1),
11926 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_1),
11927 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_1),
11928 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_1),
11929 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 3>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_sized_1),
11930 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_2),
11931 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_2),
11932 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_2),
11933 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_2),
11934 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_2),
11935 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_2),
11936 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_2),
11937 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_2),
11938 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_2),
11939 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_2),
11940 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_2),
11941 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, 2>, 3>> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.handle_nullable_sized_2),
11942 ),
11943 encoder, offset, _depth
11944 )
11945 }
11946 }
11947 unsafe impl<
11948 T0: fidl::encoding::Encode<
11949 fidl::encoding::UnboundedVector<bool>,
11950 fidl::encoding::DefaultFuchsiaResourceDialect,
11951 >,
11952 T1: fidl::encoding::Encode<
11953 fidl::encoding::UnboundedVector<i8>,
11954 fidl::encoding::DefaultFuchsiaResourceDialect,
11955 >,
11956 T2: fidl::encoding::Encode<
11957 fidl::encoding::UnboundedVector<i16>,
11958 fidl::encoding::DefaultFuchsiaResourceDialect,
11959 >,
11960 T3: fidl::encoding::Encode<
11961 fidl::encoding::UnboundedVector<i32>,
11962 fidl::encoding::DefaultFuchsiaResourceDialect,
11963 >,
11964 T4: fidl::encoding::Encode<
11965 fidl::encoding::UnboundedVector<i64>,
11966 fidl::encoding::DefaultFuchsiaResourceDialect,
11967 >,
11968 T5: fidl::encoding::Encode<
11969 fidl::encoding::UnboundedVector<u8>,
11970 fidl::encoding::DefaultFuchsiaResourceDialect,
11971 >,
11972 T6: fidl::encoding::Encode<
11973 fidl::encoding::UnboundedVector<u16>,
11974 fidl::encoding::DefaultFuchsiaResourceDialect,
11975 >,
11976 T7: fidl::encoding::Encode<
11977 fidl::encoding::UnboundedVector<u32>,
11978 fidl::encoding::DefaultFuchsiaResourceDialect,
11979 >,
11980 T8: fidl::encoding::Encode<
11981 fidl::encoding::UnboundedVector<u64>,
11982 fidl::encoding::DefaultFuchsiaResourceDialect,
11983 >,
11984 T9: fidl::encoding::Encode<
11985 fidl::encoding::UnboundedVector<f32>,
11986 fidl::encoding::DefaultFuchsiaResourceDialect,
11987 >,
11988 T10: fidl::encoding::Encode<
11989 fidl::encoding::UnboundedVector<f64>,
11990 fidl::encoding::DefaultFuchsiaResourceDialect,
11991 >,
11992 T11: fidl::encoding::Encode<
11993 fidl::encoding::UnboundedVector<
11994 fidl::encoding::HandleType<
11995 fidl::NullableHandle,
11996 { fidl::ObjectType::NONE.into_raw() },
11997 2147483648,
11998 >,
11999 >,
12000 fidl::encoding::DefaultFuchsiaResourceDialect,
12001 >,
12002 T12: fidl::encoding::Encode<
12003 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12004 fidl::encoding::DefaultFuchsiaResourceDialect,
12005 >,
12006 T13: fidl::encoding::Encode<
12007 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12008 fidl::encoding::DefaultFuchsiaResourceDialect,
12009 >,
12010 T14: fidl::encoding::Encode<
12011 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12012 fidl::encoding::DefaultFuchsiaResourceDialect,
12013 >,
12014 T15: fidl::encoding::Encode<
12015 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12016 fidl::encoding::DefaultFuchsiaResourceDialect,
12017 >,
12018 T16: fidl::encoding::Encode<
12019 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12020 fidl::encoding::DefaultFuchsiaResourceDialect,
12021 >,
12022 T17: fidl::encoding::Encode<
12023 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12024 fidl::encoding::DefaultFuchsiaResourceDialect,
12025 >,
12026 T18: fidl::encoding::Encode<
12027 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12028 fidl::encoding::DefaultFuchsiaResourceDialect,
12029 >,
12030 T19: fidl::encoding::Encode<
12031 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12032 fidl::encoding::DefaultFuchsiaResourceDialect,
12033 >,
12034 T20: fidl::encoding::Encode<
12035 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12036 fidl::encoding::DefaultFuchsiaResourceDialect,
12037 >,
12038 T21: fidl::encoding::Encode<
12039 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12040 fidl::encoding::DefaultFuchsiaResourceDialect,
12041 >,
12042 T22: fidl::encoding::Encode<
12043 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12044 fidl::encoding::DefaultFuchsiaResourceDialect,
12045 >,
12046 T23: fidl::encoding::Encode<
12047 fidl::encoding::UnboundedVector<
12048 fidl::encoding::Vector<
12049 fidl::encoding::HandleType<
12050 fidl::NullableHandle,
12051 { fidl::ObjectType::NONE.into_raw() },
12052 2147483648,
12053 >,
12054 2,
12055 >,
12056 >,
12057 fidl::encoding::DefaultFuchsiaResourceDialect,
12058 >,
12059 T24: fidl::encoding::Encode<
12060 fidl::encoding::Vector<bool, 1>,
12061 fidl::encoding::DefaultFuchsiaResourceDialect,
12062 >,
12063 T25: fidl::encoding::Encode<
12064 fidl::encoding::Vector<i8, 1>,
12065 fidl::encoding::DefaultFuchsiaResourceDialect,
12066 >,
12067 T26: fidl::encoding::Encode<
12068 fidl::encoding::Vector<i16, 1>,
12069 fidl::encoding::DefaultFuchsiaResourceDialect,
12070 >,
12071 T27: fidl::encoding::Encode<
12072 fidl::encoding::Vector<i32, 1>,
12073 fidl::encoding::DefaultFuchsiaResourceDialect,
12074 >,
12075 T28: fidl::encoding::Encode<
12076 fidl::encoding::Vector<i64, 1>,
12077 fidl::encoding::DefaultFuchsiaResourceDialect,
12078 >,
12079 T29: fidl::encoding::Encode<
12080 fidl::encoding::Vector<u8, 1>,
12081 fidl::encoding::DefaultFuchsiaResourceDialect,
12082 >,
12083 T30: fidl::encoding::Encode<
12084 fidl::encoding::Vector<u16, 1>,
12085 fidl::encoding::DefaultFuchsiaResourceDialect,
12086 >,
12087 T31: fidl::encoding::Encode<
12088 fidl::encoding::Vector<u32, 1>,
12089 fidl::encoding::DefaultFuchsiaResourceDialect,
12090 >,
12091 T32: fidl::encoding::Encode<
12092 fidl::encoding::Vector<u64, 1>,
12093 fidl::encoding::DefaultFuchsiaResourceDialect,
12094 >,
12095 T33: fidl::encoding::Encode<
12096 fidl::encoding::Vector<f32, 1>,
12097 fidl::encoding::DefaultFuchsiaResourceDialect,
12098 >,
12099 T34: fidl::encoding::Encode<
12100 fidl::encoding::Vector<f64, 1>,
12101 fidl::encoding::DefaultFuchsiaResourceDialect,
12102 >,
12103 T35: fidl::encoding::Encode<
12104 fidl::encoding::Vector<
12105 fidl::encoding::HandleType<
12106 fidl::NullableHandle,
12107 { fidl::ObjectType::NONE.into_raw() },
12108 2147483648,
12109 >,
12110 1,
12111 >,
12112 fidl::encoding::DefaultFuchsiaResourceDialect,
12113 >,
12114 T36: fidl::encoding::Encode<
12115 fidl::encoding::Vector<bool, 3>,
12116 fidl::encoding::DefaultFuchsiaResourceDialect,
12117 >,
12118 T37: fidl::encoding::Encode<
12119 fidl::encoding::Vector<i8, 3>,
12120 fidl::encoding::DefaultFuchsiaResourceDialect,
12121 >,
12122 T38: fidl::encoding::Encode<
12123 fidl::encoding::Vector<i16, 3>,
12124 fidl::encoding::DefaultFuchsiaResourceDialect,
12125 >,
12126 T39: fidl::encoding::Encode<
12127 fidl::encoding::Vector<i32, 3>,
12128 fidl::encoding::DefaultFuchsiaResourceDialect,
12129 >,
12130 T40: fidl::encoding::Encode<
12131 fidl::encoding::Vector<i64, 3>,
12132 fidl::encoding::DefaultFuchsiaResourceDialect,
12133 >,
12134 T41: fidl::encoding::Encode<
12135 fidl::encoding::Vector<u8, 3>,
12136 fidl::encoding::DefaultFuchsiaResourceDialect,
12137 >,
12138 T42: fidl::encoding::Encode<
12139 fidl::encoding::Vector<u16, 3>,
12140 fidl::encoding::DefaultFuchsiaResourceDialect,
12141 >,
12142 T43: fidl::encoding::Encode<
12143 fidl::encoding::Vector<u32, 3>,
12144 fidl::encoding::DefaultFuchsiaResourceDialect,
12145 >,
12146 T44: fidl::encoding::Encode<
12147 fidl::encoding::Vector<u64, 3>,
12148 fidl::encoding::DefaultFuchsiaResourceDialect,
12149 >,
12150 T45: fidl::encoding::Encode<
12151 fidl::encoding::Vector<f32, 3>,
12152 fidl::encoding::DefaultFuchsiaResourceDialect,
12153 >,
12154 T46: fidl::encoding::Encode<
12155 fidl::encoding::Vector<f64, 3>,
12156 fidl::encoding::DefaultFuchsiaResourceDialect,
12157 >,
12158 T47: fidl::encoding::Encode<
12159 fidl::encoding::Vector<
12160 fidl::encoding::HandleType<
12161 fidl::NullableHandle,
12162 { fidl::ObjectType::NONE.into_raw() },
12163 2147483648,
12164 >,
12165 3,
12166 >,
12167 fidl::encoding::DefaultFuchsiaResourceDialect,
12168 >,
12169 T48: fidl::encoding::Encode<
12170 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12171 fidl::encoding::DefaultFuchsiaResourceDialect,
12172 >,
12173 T49: fidl::encoding::Encode<
12174 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
12175 fidl::encoding::DefaultFuchsiaResourceDialect,
12176 >,
12177 T50: fidl::encoding::Encode<
12178 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
12179 fidl::encoding::DefaultFuchsiaResourceDialect,
12180 >,
12181 T51: fidl::encoding::Encode<
12182 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
12183 fidl::encoding::DefaultFuchsiaResourceDialect,
12184 >,
12185 T52: fidl::encoding::Encode<
12186 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
12187 fidl::encoding::DefaultFuchsiaResourceDialect,
12188 >,
12189 T53: fidl::encoding::Encode<
12190 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
12191 fidl::encoding::DefaultFuchsiaResourceDialect,
12192 >,
12193 T54: fidl::encoding::Encode<
12194 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
12195 fidl::encoding::DefaultFuchsiaResourceDialect,
12196 >,
12197 T55: fidl::encoding::Encode<
12198 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
12199 fidl::encoding::DefaultFuchsiaResourceDialect,
12200 >,
12201 T56: fidl::encoding::Encode<
12202 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
12203 fidl::encoding::DefaultFuchsiaResourceDialect,
12204 >,
12205 T57: fidl::encoding::Encode<
12206 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
12207 fidl::encoding::DefaultFuchsiaResourceDialect,
12208 >,
12209 T58: fidl::encoding::Encode<
12210 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
12211 fidl::encoding::DefaultFuchsiaResourceDialect,
12212 >,
12213 T59: fidl::encoding::Encode<
12214 fidl::encoding::Vector<
12215 fidl::encoding::Vector<
12216 fidl::encoding::HandleType<
12217 fidl::NullableHandle,
12218 { fidl::ObjectType::NONE.into_raw() },
12219 2147483648,
12220 >,
12221 2,
12222 >,
12223 3,
12224 >,
12225 fidl::encoding::DefaultFuchsiaResourceDialect,
12226 >,
12227 T60: fidl::encoding::Encode<
12228 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
12229 fidl::encoding::DefaultFuchsiaResourceDialect,
12230 >,
12231 T61: fidl::encoding::Encode<
12232 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
12233 fidl::encoding::DefaultFuchsiaResourceDialect,
12234 >,
12235 T62: fidl::encoding::Encode<
12236 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
12237 fidl::encoding::DefaultFuchsiaResourceDialect,
12238 >,
12239 T63: fidl::encoding::Encode<
12240 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
12241 fidl::encoding::DefaultFuchsiaResourceDialect,
12242 >,
12243 T64: fidl::encoding::Encode<
12244 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
12245 fidl::encoding::DefaultFuchsiaResourceDialect,
12246 >,
12247 T65: fidl::encoding::Encode<
12248 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
12249 fidl::encoding::DefaultFuchsiaResourceDialect,
12250 >,
12251 T66: fidl::encoding::Encode<
12252 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
12253 fidl::encoding::DefaultFuchsiaResourceDialect,
12254 >,
12255 T67: fidl::encoding::Encode<
12256 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
12257 fidl::encoding::DefaultFuchsiaResourceDialect,
12258 >,
12259 T68: fidl::encoding::Encode<
12260 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
12261 fidl::encoding::DefaultFuchsiaResourceDialect,
12262 >,
12263 T69: fidl::encoding::Encode<
12264 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
12265 fidl::encoding::DefaultFuchsiaResourceDialect,
12266 >,
12267 T70: fidl::encoding::Encode<
12268 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
12269 fidl::encoding::DefaultFuchsiaResourceDialect,
12270 >,
12271 T71: fidl::encoding::Encode<
12272 fidl::encoding::Optional<
12273 fidl::encoding::Vector<
12274 fidl::encoding::HandleType<
12275 fidl::NullableHandle,
12276 { fidl::ObjectType::NONE.into_raw() },
12277 2147483648,
12278 >,
12279 1,
12280 >,
12281 >,
12282 fidl::encoding::DefaultFuchsiaResourceDialect,
12283 >,
12284 T72: fidl::encoding::Encode<
12285 fidl::encoding::Optional<
12286 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12287 >,
12288 fidl::encoding::DefaultFuchsiaResourceDialect,
12289 >,
12290 T73: fidl::encoding::Encode<
12291 fidl::encoding::Optional<
12292 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12293 >,
12294 fidl::encoding::DefaultFuchsiaResourceDialect,
12295 >,
12296 T74: fidl::encoding::Encode<
12297 fidl::encoding::Optional<
12298 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12299 >,
12300 fidl::encoding::DefaultFuchsiaResourceDialect,
12301 >,
12302 T75: fidl::encoding::Encode<
12303 fidl::encoding::Optional<
12304 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12305 >,
12306 fidl::encoding::DefaultFuchsiaResourceDialect,
12307 >,
12308 T76: fidl::encoding::Encode<
12309 fidl::encoding::Optional<
12310 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12311 >,
12312 fidl::encoding::DefaultFuchsiaResourceDialect,
12313 >,
12314 T77: fidl::encoding::Encode<
12315 fidl::encoding::Optional<
12316 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12317 >,
12318 fidl::encoding::DefaultFuchsiaResourceDialect,
12319 >,
12320 T78: fidl::encoding::Encode<
12321 fidl::encoding::Optional<
12322 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12323 >,
12324 fidl::encoding::DefaultFuchsiaResourceDialect,
12325 >,
12326 T79: fidl::encoding::Encode<
12327 fidl::encoding::Optional<
12328 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12329 >,
12330 fidl::encoding::DefaultFuchsiaResourceDialect,
12331 >,
12332 T80: fidl::encoding::Encode<
12333 fidl::encoding::Optional<
12334 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12335 >,
12336 fidl::encoding::DefaultFuchsiaResourceDialect,
12337 >,
12338 T81: fidl::encoding::Encode<
12339 fidl::encoding::Optional<
12340 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12341 >,
12342 fidl::encoding::DefaultFuchsiaResourceDialect,
12343 >,
12344 T82: fidl::encoding::Encode<
12345 fidl::encoding::Optional<
12346 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12347 >,
12348 fidl::encoding::DefaultFuchsiaResourceDialect,
12349 >,
12350 T83: fidl::encoding::Encode<
12351 fidl::encoding::Optional<
12352 fidl::encoding::UnboundedVector<
12353 fidl::encoding::Vector<
12354 fidl::encoding::HandleType<
12355 fidl::NullableHandle,
12356 { fidl::ObjectType::NONE.into_raw() },
12357 2147483648,
12358 >,
12359 2,
12360 >,
12361 >,
12362 >,
12363 fidl::encoding::DefaultFuchsiaResourceDialect,
12364 >,
12365 T84: fidl::encoding::Encode<
12366 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
12367 fidl::encoding::DefaultFuchsiaResourceDialect,
12368 >,
12369 T85: fidl::encoding::Encode<
12370 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
12371 fidl::encoding::DefaultFuchsiaResourceDialect,
12372 >,
12373 T86: fidl::encoding::Encode<
12374 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
12375 fidl::encoding::DefaultFuchsiaResourceDialect,
12376 >,
12377 T87: fidl::encoding::Encode<
12378 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
12379 fidl::encoding::DefaultFuchsiaResourceDialect,
12380 >,
12381 T88: fidl::encoding::Encode<
12382 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
12383 fidl::encoding::DefaultFuchsiaResourceDialect,
12384 >,
12385 T89: fidl::encoding::Encode<
12386 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
12387 fidl::encoding::DefaultFuchsiaResourceDialect,
12388 >,
12389 T90: fidl::encoding::Encode<
12390 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
12391 fidl::encoding::DefaultFuchsiaResourceDialect,
12392 >,
12393 T91: fidl::encoding::Encode<
12394 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
12395 fidl::encoding::DefaultFuchsiaResourceDialect,
12396 >,
12397 T92: fidl::encoding::Encode<
12398 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
12399 fidl::encoding::DefaultFuchsiaResourceDialect,
12400 >,
12401 T93: fidl::encoding::Encode<
12402 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
12403 fidl::encoding::DefaultFuchsiaResourceDialect,
12404 >,
12405 T94: fidl::encoding::Encode<
12406 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
12407 fidl::encoding::DefaultFuchsiaResourceDialect,
12408 >,
12409 T95: fidl::encoding::Encode<
12410 fidl::encoding::Optional<
12411 fidl::encoding::Vector<
12412 fidl::encoding::HandleType<
12413 fidl::NullableHandle,
12414 { fidl::ObjectType::NONE.into_raw() },
12415 2147483648,
12416 >,
12417 1,
12418 >,
12419 >,
12420 fidl::encoding::DefaultFuchsiaResourceDialect,
12421 >,
12422 T96: fidl::encoding::Encode<
12423 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
12424 fidl::encoding::DefaultFuchsiaResourceDialect,
12425 >,
12426 T97: fidl::encoding::Encode<
12427 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
12428 fidl::encoding::DefaultFuchsiaResourceDialect,
12429 >,
12430 T98: fidl::encoding::Encode<
12431 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
12432 fidl::encoding::DefaultFuchsiaResourceDialect,
12433 >,
12434 T99: fidl::encoding::Encode<
12435 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
12436 fidl::encoding::DefaultFuchsiaResourceDialect,
12437 >,
12438 T100: fidl::encoding::Encode<
12439 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
12440 fidl::encoding::DefaultFuchsiaResourceDialect,
12441 >,
12442 T101: fidl::encoding::Encode<
12443 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
12444 fidl::encoding::DefaultFuchsiaResourceDialect,
12445 >,
12446 T102: fidl::encoding::Encode<
12447 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
12448 fidl::encoding::DefaultFuchsiaResourceDialect,
12449 >,
12450 T103: fidl::encoding::Encode<
12451 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
12452 fidl::encoding::DefaultFuchsiaResourceDialect,
12453 >,
12454 T104: fidl::encoding::Encode<
12455 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
12456 fidl::encoding::DefaultFuchsiaResourceDialect,
12457 >,
12458 T105: fidl::encoding::Encode<
12459 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
12460 fidl::encoding::DefaultFuchsiaResourceDialect,
12461 >,
12462 T106: fidl::encoding::Encode<
12463 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
12464 fidl::encoding::DefaultFuchsiaResourceDialect,
12465 >,
12466 T107: fidl::encoding::Encode<
12467 fidl::encoding::Optional<
12468 fidl::encoding::Vector<
12469 fidl::encoding::HandleType<
12470 fidl::NullableHandle,
12471 { fidl::ObjectType::NONE.into_raw() },
12472 2147483648,
12473 >,
12474 3,
12475 >,
12476 >,
12477 fidl::encoding::DefaultFuchsiaResourceDialect,
12478 >,
12479 T108: fidl::encoding::Encode<
12480 fidl::encoding::Optional<
12481 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12482 >,
12483 fidl::encoding::DefaultFuchsiaResourceDialect,
12484 >,
12485 T109: fidl::encoding::Encode<
12486 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>>,
12487 fidl::encoding::DefaultFuchsiaResourceDialect,
12488 >,
12489 T110: fidl::encoding::Encode<
12490 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>>,
12491 fidl::encoding::DefaultFuchsiaResourceDialect,
12492 >,
12493 T111: fidl::encoding::Encode<
12494 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>>,
12495 fidl::encoding::DefaultFuchsiaResourceDialect,
12496 >,
12497 T112: fidl::encoding::Encode<
12498 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>>,
12499 fidl::encoding::DefaultFuchsiaResourceDialect,
12500 >,
12501 T113: fidl::encoding::Encode<
12502 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>>,
12503 fidl::encoding::DefaultFuchsiaResourceDialect,
12504 >,
12505 T114: fidl::encoding::Encode<
12506 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>>,
12507 fidl::encoding::DefaultFuchsiaResourceDialect,
12508 >,
12509 T115: fidl::encoding::Encode<
12510 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>>,
12511 fidl::encoding::DefaultFuchsiaResourceDialect,
12512 >,
12513 T116: fidl::encoding::Encode<
12514 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>>,
12515 fidl::encoding::DefaultFuchsiaResourceDialect,
12516 >,
12517 T117: fidl::encoding::Encode<
12518 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>>,
12519 fidl::encoding::DefaultFuchsiaResourceDialect,
12520 >,
12521 T118: fidl::encoding::Encode<
12522 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>>,
12523 fidl::encoding::DefaultFuchsiaResourceDialect,
12524 >,
12525 T119: fidl::encoding::Encode<
12526 fidl::encoding::Optional<
12527 fidl::encoding::Vector<
12528 fidl::encoding::Vector<
12529 fidl::encoding::HandleType<
12530 fidl::NullableHandle,
12531 { fidl::ObjectType::NONE.into_raw() },
12532 2147483648,
12533 >,
12534 2,
12535 >,
12536 3,
12537 >,
12538 >,
12539 fidl::encoding::DefaultFuchsiaResourceDialect,
12540 >,
12541 > fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>
12542 for (
12543 T0,
12544 T1,
12545 T2,
12546 T3,
12547 T4,
12548 T5,
12549 T6,
12550 T7,
12551 T8,
12552 T9,
12553 T10,
12554 T11,
12555 T12,
12556 T13,
12557 T14,
12558 T15,
12559 T16,
12560 T17,
12561 T18,
12562 T19,
12563 T20,
12564 T21,
12565 T22,
12566 T23,
12567 T24,
12568 T25,
12569 T26,
12570 T27,
12571 T28,
12572 T29,
12573 T30,
12574 T31,
12575 T32,
12576 T33,
12577 T34,
12578 T35,
12579 T36,
12580 T37,
12581 T38,
12582 T39,
12583 T40,
12584 T41,
12585 T42,
12586 T43,
12587 T44,
12588 T45,
12589 T46,
12590 T47,
12591 T48,
12592 T49,
12593 T50,
12594 T51,
12595 T52,
12596 T53,
12597 T54,
12598 T55,
12599 T56,
12600 T57,
12601 T58,
12602 T59,
12603 T60,
12604 T61,
12605 T62,
12606 T63,
12607 T64,
12608 T65,
12609 T66,
12610 T67,
12611 T68,
12612 T69,
12613 T70,
12614 T71,
12615 T72,
12616 T73,
12617 T74,
12618 T75,
12619 T76,
12620 T77,
12621 T78,
12622 T79,
12623 T80,
12624 T81,
12625 T82,
12626 T83,
12627 T84,
12628 T85,
12629 T86,
12630 T87,
12631 T88,
12632 T89,
12633 T90,
12634 T91,
12635 T92,
12636 T93,
12637 T94,
12638 T95,
12639 T96,
12640 T97,
12641 T98,
12642 T99,
12643 T100,
12644 T101,
12645 T102,
12646 T103,
12647 T104,
12648 T105,
12649 T106,
12650 T107,
12651 T108,
12652 T109,
12653 T110,
12654 T111,
12655 T112,
12656 T113,
12657 T114,
12658 T115,
12659 T116,
12660 T117,
12661 T118,
12662 T119,
12663 )
12664 {
12665 #[inline]
12666 unsafe fn encode(
12667 self,
12668 encoder: &mut fidl::encoding::Encoder<
12669 '_,
12670 fidl::encoding::DefaultFuchsiaResourceDialect,
12671 >,
12672 offset: usize,
12673 depth: fidl::encoding::Depth,
12674 ) -> fidl::Result<()> {
12675 encoder.debug_check_bounds::<Vectors>(offset);
12676 self.0.encode(encoder, offset + 0, depth)?;
12680 self.1.encode(encoder, offset + 16, depth)?;
12681 self.2.encode(encoder, offset + 32, depth)?;
12682 self.3.encode(encoder, offset + 48, depth)?;
12683 self.4.encode(encoder, offset + 64, depth)?;
12684 self.5.encode(encoder, offset + 80, depth)?;
12685 self.6.encode(encoder, offset + 96, depth)?;
12686 self.7.encode(encoder, offset + 112, depth)?;
12687 self.8.encode(encoder, offset + 128, depth)?;
12688 self.9.encode(encoder, offset + 144, depth)?;
12689 self.10.encode(encoder, offset + 160, depth)?;
12690 self.11.encode(encoder, offset + 176, depth)?;
12691 self.12.encode(encoder, offset + 192, depth)?;
12692 self.13.encode(encoder, offset + 208, depth)?;
12693 self.14.encode(encoder, offset + 224, depth)?;
12694 self.15.encode(encoder, offset + 240, depth)?;
12695 self.16.encode(encoder, offset + 256, depth)?;
12696 self.17.encode(encoder, offset + 272, depth)?;
12697 self.18.encode(encoder, offset + 288, depth)?;
12698 self.19.encode(encoder, offset + 304, depth)?;
12699 self.20.encode(encoder, offset + 320, depth)?;
12700 self.21.encode(encoder, offset + 336, depth)?;
12701 self.22.encode(encoder, offset + 352, depth)?;
12702 self.23.encode(encoder, offset + 368, depth)?;
12703 self.24.encode(encoder, offset + 384, depth)?;
12704 self.25.encode(encoder, offset + 400, depth)?;
12705 self.26.encode(encoder, offset + 416, depth)?;
12706 self.27.encode(encoder, offset + 432, depth)?;
12707 self.28.encode(encoder, offset + 448, depth)?;
12708 self.29.encode(encoder, offset + 464, depth)?;
12709 self.30.encode(encoder, offset + 480, depth)?;
12710 self.31.encode(encoder, offset + 496, depth)?;
12711 self.32.encode(encoder, offset + 512, depth)?;
12712 self.33.encode(encoder, offset + 528, depth)?;
12713 self.34.encode(encoder, offset + 544, depth)?;
12714 self.35.encode(encoder, offset + 560, depth)?;
12715 self.36.encode(encoder, offset + 576, depth)?;
12716 self.37.encode(encoder, offset + 592, depth)?;
12717 self.38.encode(encoder, offset + 608, depth)?;
12718 self.39.encode(encoder, offset + 624, depth)?;
12719 self.40.encode(encoder, offset + 640, depth)?;
12720 self.41.encode(encoder, offset + 656, depth)?;
12721 self.42.encode(encoder, offset + 672, depth)?;
12722 self.43.encode(encoder, offset + 688, depth)?;
12723 self.44.encode(encoder, offset + 704, depth)?;
12724 self.45.encode(encoder, offset + 720, depth)?;
12725 self.46.encode(encoder, offset + 736, depth)?;
12726 self.47.encode(encoder, offset + 752, depth)?;
12727 self.48.encode(encoder, offset + 768, depth)?;
12728 self.49.encode(encoder, offset + 784, depth)?;
12729 self.50.encode(encoder, offset + 800, depth)?;
12730 self.51.encode(encoder, offset + 816, depth)?;
12731 self.52.encode(encoder, offset + 832, depth)?;
12732 self.53.encode(encoder, offset + 848, depth)?;
12733 self.54.encode(encoder, offset + 864, depth)?;
12734 self.55.encode(encoder, offset + 880, depth)?;
12735 self.56.encode(encoder, offset + 896, depth)?;
12736 self.57.encode(encoder, offset + 912, depth)?;
12737 self.58.encode(encoder, offset + 928, depth)?;
12738 self.59.encode(encoder, offset + 944, depth)?;
12739 self.60.encode(encoder, offset + 960, depth)?;
12740 self.61.encode(encoder, offset + 976, depth)?;
12741 self.62.encode(encoder, offset + 992, depth)?;
12742 self.63.encode(encoder, offset + 1008, depth)?;
12743 self.64.encode(encoder, offset + 1024, depth)?;
12744 self.65.encode(encoder, offset + 1040, depth)?;
12745 self.66.encode(encoder, offset + 1056, depth)?;
12746 self.67.encode(encoder, offset + 1072, depth)?;
12747 self.68.encode(encoder, offset + 1088, depth)?;
12748 self.69.encode(encoder, offset + 1104, depth)?;
12749 self.70.encode(encoder, offset + 1120, depth)?;
12750 self.71.encode(encoder, offset + 1136, depth)?;
12751 self.72.encode(encoder, offset + 1152, depth)?;
12752 self.73.encode(encoder, offset + 1168, depth)?;
12753 self.74.encode(encoder, offset + 1184, depth)?;
12754 self.75.encode(encoder, offset + 1200, depth)?;
12755 self.76.encode(encoder, offset + 1216, depth)?;
12756 self.77.encode(encoder, offset + 1232, depth)?;
12757 self.78.encode(encoder, offset + 1248, depth)?;
12758 self.79.encode(encoder, offset + 1264, depth)?;
12759 self.80.encode(encoder, offset + 1280, depth)?;
12760 self.81.encode(encoder, offset + 1296, depth)?;
12761 self.82.encode(encoder, offset + 1312, depth)?;
12762 self.83.encode(encoder, offset + 1328, depth)?;
12763 self.84.encode(encoder, offset + 1344, depth)?;
12764 self.85.encode(encoder, offset + 1360, depth)?;
12765 self.86.encode(encoder, offset + 1376, depth)?;
12766 self.87.encode(encoder, offset + 1392, depth)?;
12767 self.88.encode(encoder, offset + 1408, depth)?;
12768 self.89.encode(encoder, offset + 1424, depth)?;
12769 self.90.encode(encoder, offset + 1440, depth)?;
12770 self.91.encode(encoder, offset + 1456, depth)?;
12771 self.92.encode(encoder, offset + 1472, depth)?;
12772 self.93.encode(encoder, offset + 1488, depth)?;
12773 self.94.encode(encoder, offset + 1504, depth)?;
12774 self.95.encode(encoder, offset + 1520, depth)?;
12775 self.96.encode(encoder, offset + 1536, depth)?;
12776 self.97.encode(encoder, offset + 1552, depth)?;
12777 self.98.encode(encoder, offset + 1568, depth)?;
12778 self.99.encode(encoder, offset + 1584, depth)?;
12779 self.100.encode(encoder, offset + 1600, depth)?;
12780 self.101.encode(encoder, offset + 1616, depth)?;
12781 self.102.encode(encoder, offset + 1632, depth)?;
12782 self.103.encode(encoder, offset + 1648, depth)?;
12783 self.104.encode(encoder, offset + 1664, depth)?;
12784 self.105.encode(encoder, offset + 1680, depth)?;
12785 self.106.encode(encoder, offset + 1696, depth)?;
12786 self.107.encode(encoder, offset + 1712, depth)?;
12787 self.108.encode(encoder, offset + 1728, depth)?;
12788 self.109.encode(encoder, offset + 1744, depth)?;
12789 self.110.encode(encoder, offset + 1760, depth)?;
12790 self.111.encode(encoder, offset + 1776, depth)?;
12791 self.112.encode(encoder, offset + 1792, depth)?;
12792 self.113.encode(encoder, offset + 1808, depth)?;
12793 self.114.encode(encoder, offset + 1824, depth)?;
12794 self.115.encode(encoder, offset + 1840, depth)?;
12795 self.116.encode(encoder, offset + 1856, depth)?;
12796 self.117.encode(encoder, offset + 1872, depth)?;
12797 self.118.encode(encoder, offset + 1888, depth)?;
12798 self.119.encode(encoder, offset + 1904, depth)?;
12799 Ok(())
12800 }
12801 }
12802
12803 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Vectors {
12804 #[inline(always)]
12805 fn new_empty() -> Self {
12806 Self {
12807 b_0: fidl::new_empty!(
12808 fidl::encoding::UnboundedVector<bool>,
12809 fidl::encoding::DefaultFuchsiaResourceDialect
12810 ),
12811 i8_0: fidl::new_empty!(
12812 fidl::encoding::UnboundedVector<i8>,
12813 fidl::encoding::DefaultFuchsiaResourceDialect
12814 ),
12815 i16_0: fidl::new_empty!(
12816 fidl::encoding::UnboundedVector<i16>,
12817 fidl::encoding::DefaultFuchsiaResourceDialect
12818 ),
12819 i32_0: fidl::new_empty!(
12820 fidl::encoding::UnboundedVector<i32>,
12821 fidl::encoding::DefaultFuchsiaResourceDialect
12822 ),
12823 i64_0: fidl::new_empty!(
12824 fidl::encoding::UnboundedVector<i64>,
12825 fidl::encoding::DefaultFuchsiaResourceDialect
12826 ),
12827 u8_0: fidl::new_empty!(
12828 fidl::encoding::UnboundedVector<u8>,
12829 fidl::encoding::DefaultFuchsiaResourceDialect
12830 ),
12831 u16_0: fidl::new_empty!(
12832 fidl::encoding::UnboundedVector<u16>,
12833 fidl::encoding::DefaultFuchsiaResourceDialect
12834 ),
12835 u32_0: fidl::new_empty!(
12836 fidl::encoding::UnboundedVector<u32>,
12837 fidl::encoding::DefaultFuchsiaResourceDialect
12838 ),
12839 u64_0: fidl::new_empty!(
12840 fidl::encoding::UnboundedVector<u64>,
12841 fidl::encoding::DefaultFuchsiaResourceDialect
12842 ),
12843 f32_0: fidl::new_empty!(
12844 fidl::encoding::UnboundedVector<f32>,
12845 fidl::encoding::DefaultFuchsiaResourceDialect
12846 ),
12847 f64_0: fidl::new_empty!(
12848 fidl::encoding::UnboundedVector<f64>,
12849 fidl::encoding::DefaultFuchsiaResourceDialect
12850 ),
12851 handle_0: fidl::new_empty!(
12852 fidl::encoding::UnboundedVector<
12853 fidl::encoding::HandleType<
12854 fidl::NullableHandle,
12855 { fidl::ObjectType::NONE.into_raw() },
12856 2147483648,
12857 >,
12858 >,
12859 fidl::encoding::DefaultFuchsiaResourceDialect
12860 ),
12861 b_1: fidl::new_empty!(
12862 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12863 fidl::encoding::DefaultFuchsiaResourceDialect
12864 ),
12865 i8_1: fidl::new_empty!(
12866 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12867 fidl::encoding::DefaultFuchsiaResourceDialect
12868 ),
12869 i16_1: fidl::new_empty!(
12870 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12871 fidl::encoding::DefaultFuchsiaResourceDialect
12872 ),
12873 i32_1: fidl::new_empty!(
12874 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12875 fidl::encoding::DefaultFuchsiaResourceDialect
12876 ),
12877 i64_1: fidl::new_empty!(
12878 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12879 fidl::encoding::DefaultFuchsiaResourceDialect
12880 ),
12881 u8_1: fidl::new_empty!(
12882 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12883 fidl::encoding::DefaultFuchsiaResourceDialect
12884 ),
12885 u16_1: fidl::new_empty!(
12886 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12887 fidl::encoding::DefaultFuchsiaResourceDialect
12888 ),
12889 u32_1: fidl::new_empty!(
12890 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12891 fidl::encoding::DefaultFuchsiaResourceDialect
12892 ),
12893 u64_1: fidl::new_empty!(
12894 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12895 fidl::encoding::DefaultFuchsiaResourceDialect
12896 ),
12897 f32_1: fidl::new_empty!(
12898 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12899 fidl::encoding::DefaultFuchsiaResourceDialect
12900 ),
12901 f64_1: fidl::new_empty!(
12902 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12903 fidl::encoding::DefaultFuchsiaResourceDialect
12904 ),
12905 handle_1: fidl::new_empty!(
12906 fidl::encoding::UnboundedVector<
12907 fidl::encoding::Vector<
12908 fidl::encoding::HandleType<
12909 fidl::NullableHandle,
12910 { fidl::ObjectType::NONE.into_raw() },
12911 2147483648,
12912 >,
12913 2,
12914 >,
12915 >,
12916 fidl::encoding::DefaultFuchsiaResourceDialect
12917 ),
12918 b_sized_0: fidl::new_empty!(fidl::encoding::Vector<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12919 i8_sized_0: fidl::new_empty!(fidl::encoding::Vector<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12920 i16_sized_0: fidl::new_empty!(fidl::encoding::Vector<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12921 i32_sized_0: fidl::new_empty!(fidl::encoding::Vector<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12922 i64_sized_0: fidl::new_empty!(fidl::encoding::Vector<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12923 u8_sized_0: fidl::new_empty!(fidl::encoding::Vector<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12924 u16_sized_0: fidl::new_empty!(fidl::encoding::Vector<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12925 u32_sized_0: fidl::new_empty!(fidl::encoding::Vector<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12926 u64_sized_0: fidl::new_empty!(fidl::encoding::Vector<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12927 f32_sized_0: fidl::new_empty!(fidl::encoding::Vector<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12928 f64_sized_0: fidl::new_empty!(fidl::encoding::Vector<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12929 handle_sized_0: fidl::new_empty!(
12930 fidl::encoding::Vector<
12931 fidl::encoding::HandleType<
12932 fidl::NullableHandle,
12933 { fidl::ObjectType::NONE.into_raw() },
12934 2147483648,
12935 >,
12936 1,
12937 >,
12938 fidl::encoding::DefaultFuchsiaResourceDialect
12939 ),
12940 b_sized_1: fidl::new_empty!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12941 i8_sized_1: fidl::new_empty!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12942 i16_sized_1: fidl::new_empty!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12943 i32_sized_1: fidl::new_empty!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12944 i64_sized_1: fidl::new_empty!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12945 u8_sized_1: fidl::new_empty!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12946 u16_sized_1: fidl::new_empty!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12947 u32_sized_1: fidl::new_empty!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12948 u64_sized_1: fidl::new_empty!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12949 f32_sized_1: fidl::new_empty!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12950 f64_sized_1: fidl::new_empty!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12951 handle_sized_1: fidl::new_empty!(
12952 fidl::encoding::Vector<
12953 fidl::encoding::HandleType<
12954 fidl::NullableHandle,
12955 { fidl::ObjectType::NONE.into_raw() },
12956 2147483648,
12957 >,
12958 3,
12959 >,
12960 fidl::encoding::DefaultFuchsiaResourceDialect
12961 ),
12962 b_sized_2: fidl::new_empty!(
12963 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12964 fidl::encoding::DefaultFuchsiaResourceDialect
12965 ),
12966 i8_sized_2: fidl::new_empty!(
12967 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
12968 fidl::encoding::DefaultFuchsiaResourceDialect
12969 ),
12970 i16_sized_2: fidl::new_empty!(
12971 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
12972 fidl::encoding::DefaultFuchsiaResourceDialect
12973 ),
12974 i32_sized_2: fidl::new_empty!(
12975 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
12976 fidl::encoding::DefaultFuchsiaResourceDialect
12977 ),
12978 i64_sized_2: fidl::new_empty!(
12979 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
12980 fidl::encoding::DefaultFuchsiaResourceDialect
12981 ),
12982 u8_sized_2: fidl::new_empty!(
12983 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
12984 fidl::encoding::DefaultFuchsiaResourceDialect
12985 ),
12986 u16_sized_2: fidl::new_empty!(
12987 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
12988 fidl::encoding::DefaultFuchsiaResourceDialect
12989 ),
12990 u32_sized_2: fidl::new_empty!(
12991 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
12992 fidl::encoding::DefaultFuchsiaResourceDialect
12993 ),
12994 u64_sized_2: fidl::new_empty!(
12995 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
12996 fidl::encoding::DefaultFuchsiaResourceDialect
12997 ),
12998 f32_sized_2: fidl::new_empty!(
12999 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13000 fidl::encoding::DefaultFuchsiaResourceDialect
13001 ),
13002 f64_sized_2: fidl::new_empty!(
13003 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13004 fidl::encoding::DefaultFuchsiaResourceDialect
13005 ),
13006 handle_sized_2: fidl::new_empty!(
13007 fidl::encoding::Vector<
13008 fidl::encoding::Vector<
13009 fidl::encoding::HandleType<
13010 fidl::NullableHandle,
13011 { fidl::ObjectType::NONE.into_raw() },
13012 2147483648,
13013 >,
13014 2,
13015 >,
13016 3,
13017 >,
13018 fidl::encoding::DefaultFuchsiaResourceDialect
13019 ),
13020 b_nullable_0: fidl::new_empty!(
13021 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13022 fidl::encoding::DefaultFuchsiaResourceDialect
13023 ),
13024 i8_nullable_0: fidl::new_empty!(
13025 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13026 fidl::encoding::DefaultFuchsiaResourceDialect
13027 ),
13028 i16_nullable_0: fidl::new_empty!(
13029 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13030 fidl::encoding::DefaultFuchsiaResourceDialect
13031 ),
13032 i32_nullable_0: fidl::new_empty!(
13033 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13034 fidl::encoding::DefaultFuchsiaResourceDialect
13035 ),
13036 i64_nullable_0: fidl::new_empty!(
13037 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13038 fidl::encoding::DefaultFuchsiaResourceDialect
13039 ),
13040 u8_nullable_0: fidl::new_empty!(
13041 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13042 fidl::encoding::DefaultFuchsiaResourceDialect
13043 ),
13044 u16_nullable_0: fidl::new_empty!(
13045 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13046 fidl::encoding::DefaultFuchsiaResourceDialect
13047 ),
13048 u32_nullable_0: fidl::new_empty!(
13049 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13050 fidl::encoding::DefaultFuchsiaResourceDialect
13051 ),
13052 u64_nullable_0: fidl::new_empty!(
13053 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13054 fidl::encoding::DefaultFuchsiaResourceDialect
13055 ),
13056 f32_nullable_0: fidl::new_empty!(
13057 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13058 fidl::encoding::DefaultFuchsiaResourceDialect
13059 ),
13060 f64_nullable_0: fidl::new_empty!(
13061 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13062 fidl::encoding::DefaultFuchsiaResourceDialect
13063 ),
13064 handle_nullable_0: fidl::new_empty!(
13065 fidl::encoding::Optional<
13066 fidl::encoding::Vector<
13067 fidl::encoding::HandleType<
13068 fidl::NullableHandle,
13069 { fidl::ObjectType::NONE.into_raw() },
13070 2147483648,
13071 >,
13072 1,
13073 >,
13074 >,
13075 fidl::encoding::DefaultFuchsiaResourceDialect
13076 ),
13077 b_nullable_1: fidl::new_empty!(
13078 fidl::encoding::Optional<
13079 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13080 >,
13081 fidl::encoding::DefaultFuchsiaResourceDialect
13082 ),
13083 i8_nullable_1: fidl::new_empty!(
13084 fidl::encoding::Optional<
13085 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13086 >,
13087 fidl::encoding::DefaultFuchsiaResourceDialect
13088 ),
13089 i16_nullable_1: fidl::new_empty!(
13090 fidl::encoding::Optional<
13091 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13092 >,
13093 fidl::encoding::DefaultFuchsiaResourceDialect
13094 ),
13095 i32_nullable_1: fidl::new_empty!(
13096 fidl::encoding::Optional<
13097 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13098 >,
13099 fidl::encoding::DefaultFuchsiaResourceDialect
13100 ),
13101 i64_nullable_1: fidl::new_empty!(
13102 fidl::encoding::Optional<
13103 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13104 >,
13105 fidl::encoding::DefaultFuchsiaResourceDialect
13106 ),
13107 u8_nullable_1: fidl::new_empty!(
13108 fidl::encoding::Optional<
13109 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13110 >,
13111 fidl::encoding::DefaultFuchsiaResourceDialect
13112 ),
13113 u16_nullable_1: fidl::new_empty!(
13114 fidl::encoding::Optional<
13115 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13116 >,
13117 fidl::encoding::DefaultFuchsiaResourceDialect
13118 ),
13119 u32_nullable_1: fidl::new_empty!(
13120 fidl::encoding::Optional<
13121 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13122 >,
13123 fidl::encoding::DefaultFuchsiaResourceDialect
13124 ),
13125 u64_nullable_1: fidl::new_empty!(
13126 fidl::encoding::Optional<
13127 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13128 >,
13129 fidl::encoding::DefaultFuchsiaResourceDialect
13130 ),
13131 f32_nullable_1: fidl::new_empty!(
13132 fidl::encoding::Optional<
13133 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13134 >,
13135 fidl::encoding::DefaultFuchsiaResourceDialect
13136 ),
13137 f64_nullable_1: fidl::new_empty!(
13138 fidl::encoding::Optional<
13139 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13140 >,
13141 fidl::encoding::DefaultFuchsiaResourceDialect
13142 ),
13143 handle_nullable_1: fidl::new_empty!(
13144 fidl::encoding::Optional<
13145 fidl::encoding::UnboundedVector<
13146 fidl::encoding::Vector<
13147 fidl::encoding::HandleType<
13148 fidl::NullableHandle,
13149 { fidl::ObjectType::NONE.into_raw() },
13150 2147483648,
13151 >,
13152 2,
13153 >,
13154 >,
13155 >,
13156 fidl::encoding::DefaultFuchsiaResourceDialect
13157 ),
13158 b_nullable_sized_0: fidl::new_empty!(
13159 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13160 fidl::encoding::DefaultFuchsiaResourceDialect
13161 ),
13162 i8_nullable_sized_0: fidl::new_empty!(
13163 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13164 fidl::encoding::DefaultFuchsiaResourceDialect
13165 ),
13166 i16_nullable_sized_0: fidl::new_empty!(
13167 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13168 fidl::encoding::DefaultFuchsiaResourceDialect
13169 ),
13170 i32_nullable_sized_0: fidl::new_empty!(
13171 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13172 fidl::encoding::DefaultFuchsiaResourceDialect
13173 ),
13174 i64_nullable_sized_0: fidl::new_empty!(
13175 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13176 fidl::encoding::DefaultFuchsiaResourceDialect
13177 ),
13178 u8_nullable_sized_0: fidl::new_empty!(
13179 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13180 fidl::encoding::DefaultFuchsiaResourceDialect
13181 ),
13182 u16_nullable_sized_0: fidl::new_empty!(
13183 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13184 fidl::encoding::DefaultFuchsiaResourceDialect
13185 ),
13186 u32_nullable_sized_0: fidl::new_empty!(
13187 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13188 fidl::encoding::DefaultFuchsiaResourceDialect
13189 ),
13190 u64_nullable_sized_0: fidl::new_empty!(
13191 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13192 fidl::encoding::DefaultFuchsiaResourceDialect
13193 ),
13194 f32_nullable_sized_0: fidl::new_empty!(
13195 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13196 fidl::encoding::DefaultFuchsiaResourceDialect
13197 ),
13198 f64_nullable_sized_0: fidl::new_empty!(
13199 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13200 fidl::encoding::DefaultFuchsiaResourceDialect
13201 ),
13202 handle_nullable_sized_0: fidl::new_empty!(
13203 fidl::encoding::Optional<
13204 fidl::encoding::Vector<
13205 fidl::encoding::HandleType<
13206 fidl::NullableHandle,
13207 { fidl::ObjectType::NONE.into_raw() },
13208 2147483648,
13209 >,
13210 1,
13211 >,
13212 >,
13213 fidl::encoding::DefaultFuchsiaResourceDialect
13214 ),
13215 b_nullable_sized_1: fidl::new_empty!(
13216 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
13217 fidl::encoding::DefaultFuchsiaResourceDialect
13218 ),
13219 i8_nullable_sized_1: fidl::new_empty!(
13220 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
13221 fidl::encoding::DefaultFuchsiaResourceDialect
13222 ),
13223 i16_nullable_sized_1: fidl::new_empty!(
13224 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
13225 fidl::encoding::DefaultFuchsiaResourceDialect
13226 ),
13227 i32_nullable_sized_1: fidl::new_empty!(
13228 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
13229 fidl::encoding::DefaultFuchsiaResourceDialect
13230 ),
13231 i64_nullable_sized_1: fidl::new_empty!(
13232 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
13233 fidl::encoding::DefaultFuchsiaResourceDialect
13234 ),
13235 u8_nullable_sized_1: fidl::new_empty!(
13236 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
13237 fidl::encoding::DefaultFuchsiaResourceDialect
13238 ),
13239 u16_nullable_sized_1: fidl::new_empty!(
13240 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
13241 fidl::encoding::DefaultFuchsiaResourceDialect
13242 ),
13243 u32_nullable_sized_1: fidl::new_empty!(
13244 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
13245 fidl::encoding::DefaultFuchsiaResourceDialect
13246 ),
13247 u64_nullable_sized_1: fidl::new_empty!(
13248 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
13249 fidl::encoding::DefaultFuchsiaResourceDialect
13250 ),
13251 f32_nullable_sized_1: fidl::new_empty!(
13252 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
13253 fidl::encoding::DefaultFuchsiaResourceDialect
13254 ),
13255 f64_nullable_sized_1: fidl::new_empty!(
13256 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
13257 fidl::encoding::DefaultFuchsiaResourceDialect
13258 ),
13259 handle_nullable_sized_1: fidl::new_empty!(
13260 fidl::encoding::Optional<
13261 fidl::encoding::Vector<
13262 fidl::encoding::HandleType<
13263 fidl::NullableHandle,
13264 { fidl::ObjectType::NONE.into_raw() },
13265 2147483648,
13266 >,
13267 3,
13268 >,
13269 >,
13270 fidl::encoding::DefaultFuchsiaResourceDialect
13271 ),
13272 b_nullable_sized_2: fidl::new_empty!(
13273 fidl::encoding::Optional<
13274 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
13275 >,
13276 fidl::encoding::DefaultFuchsiaResourceDialect
13277 ),
13278 i8_nullable_sized_2: fidl::new_empty!(
13279 fidl::encoding::Optional<
13280 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
13281 >,
13282 fidl::encoding::DefaultFuchsiaResourceDialect
13283 ),
13284 i16_nullable_sized_2: fidl::new_empty!(
13285 fidl::encoding::Optional<
13286 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
13287 >,
13288 fidl::encoding::DefaultFuchsiaResourceDialect
13289 ),
13290 i32_nullable_sized_2: fidl::new_empty!(
13291 fidl::encoding::Optional<
13292 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
13293 >,
13294 fidl::encoding::DefaultFuchsiaResourceDialect
13295 ),
13296 i64_nullable_sized_2: fidl::new_empty!(
13297 fidl::encoding::Optional<
13298 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
13299 >,
13300 fidl::encoding::DefaultFuchsiaResourceDialect
13301 ),
13302 u8_nullable_sized_2: fidl::new_empty!(
13303 fidl::encoding::Optional<
13304 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
13305 >,
13306 fidl::encoding::DefaultFuchsiaResourceDialect
13307 ),
13308 u16_nullable_sized_2: fidl::new_empty!(
13309 fidl::encoding::Optional<
13310 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
13311 >,
13312 fidl::encoding::DefaultFuchsiaResourceDialect
13313 ),
13314 u32_nullable_sized_2: fidl::new_empty!(
13315 fidl::encoding::Optional<
13316 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
13317 >,
13318 fidl::encoding::DefaultFuchsiaResourceDialect
13319 ),
13320 u64_nullable_sized_2: fidl::new_empty!(
13321 fidl::encoding::Optional<
13322 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
13323 >,
13324 fidl::encoding::DefaultFuchsiaResourceDialect
13325 ),
13326 f32_nullable_sized_2: fidl::new_empty!(
13327 fidl::encoding::Optional<
13328 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13329 >,
13330 fidl::encoding::DefaultFuchsiaResourceDialect
13331 ),
13332 f64_nullable_sized_2: fidl::new_empty!(
13333 fidl::encoding::Optional<
13334 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13335 >,
13336 fidl::encoding::DefaultFuchsiaResourceDialect
13337 ),
13338 handle_nullable_sized_2: fidl::new_empty!(
13339 fidl::encoding::Optional<
13340 fidl::encoding::Vector<
13341 fidl::encoding::Vector<
13342 fidl::encoding::HandleType<
13343 fidl::NullableHandle,
13344 { fidl::ObjectType::NONE.into_raw() },
13345 2147483648,
13346 >,
13347 2,
13348 >,
13349 3,
13350 >,
13351 >,
13352 fidl::encoding::DefaultFuchsiaResourceDialect
13353 ),
13354 }
13355 }
13356
13357 #[inline]
13358 unsafe fn decode(
13359 &mut self,
13360 decoder: &mut fidl::encoding::Decoder<
13361 '_,
13362 fidl::encoding::DefaultFuchsiaResourceDialect,
13363 >,
13364 offset: usize,
13365 _depth: fidl::encoding::Depth,
13366 ) -> fidl::Result<()> {
13367 decoder.debug_check_bounds::<Self>(offset);
13368 fidl::decode!(
13370 fidl::encoding::UnboundedVector<bool>,
13371 fidl::encoding::DefaultFuchsiaResourceDialect,
13372 &mut self.b_0,
13373 decoder,
13374 offset + 0,
13375 _depth
13376 )?;
13377 fidl::decode!(
13378 fidl::encoding::UnboundedVector<i8>,
13379 fidl::encoding::DefaultFuchsiaResourceDialect,
13380 &mut self.i8_0,
13381 decoder,
13382 offset + 16,
13383 _depth
13384 )?;
13385 fidl::decode!(
13386 fidl::encoding::UnboundedVector<i16>,
13387 fidl::encoding::DefaultFuchsiaResourceDialect,
13388 &mut self.i16_0,
13389 decoder,
13390 offset + 32,
13391 _depth
13392 )?;
13393 fidl::decode!(
13394 fidl::encoding::UnboundedVector<i32>,
13395 fidl::encoding::DefaultFuchsiaResourceDialect,
13396 &mut self.i32_0,
13397 decoder,
13398 offset + 48,
13399 _depth
13400 )?;
13401 fidl::decode!(
13402 fidl::encoding::UnboundedVector<i64>,
13403 fidl::encoding::DefaultFuchsiaResourceDialect,
13404 &mut self.i64_0,
13405 decoder,
13406 offset + 64,
13407 _depth
13408 )?;
13409 fidl::decode!(
13410 fidl::encoding::UnboundedVector<u8>,
13411 fidl::encoding::DefaultFuchsiaResourceDialect,
13412 &mut self.u8_0,
13413 decoder,
13414 offset + 80,
13415 _depth
13416 )?;
13417 fidl::decode!(
13418 fidl::encoding::UnboundedVector<u16>,
13419 fidl::encoding::DefaultFuchsiaResourceDialect,
13420 &mut self.u16_0,
13421 decoder,
13422 offset + 96,
13423 _depth
13424 )?;
13425 fidl::decode!(
13426 fidl::encoding::UnboundedVector<u32>,
13427 fidl::encoding::DefaultFuchsiaResourceDialect,
13428 &mut self.u32_0,
13429 decoder,
13430 offset + 112,
13431 _depth
13432 )?;
13433 fidl::decode!(
13434 fidl::encoding::UnboundedVector<u64>,
13435 fidl::encoding::DefaultFuchsiaResourceDialect,
13436 &mut self.u64_0,
13437 decoder,
13438 offset + 128,
13439 _depth
13440 )?;
13441 fidl::decode!(
13442 fidl::encoding::UnboundedVector<f32>,
13443 fidl::encoding::DefaultFuchsiaResourceDialect,
13444 &mut self.f32_0,
13445 decoder,
13446 offset + 144,
13447 _depth
13448 )?;
13449 fidl::decode!(
13450 fidl::encoding::UnboundedVector<f64>,
13451 fidl::encoding::DefaultFuchsiaResourceDialect,
13452 &mut self.f64_0,
13453 decoder,
13454 offset + 160,
13455 _depth
13456 )?;
13457 fidl::decode!(
13458 fidl::encoding::UnboundedVector<
13459 fidl::encoding::HandleType<
13460 fidl::NullableHandle,
13461 { fidl::ObjectType::NONE.into_raw() },
13462 2147483648,
13463 >,
13464 >,
13465 fidl::encoding::DefaultFuchsiaResourceDialect,
13466 &mut self.handle_0,
13467 decoder,
13468 offset + 176,
13469 _depth
13470 )?;
13471 fidl::decode!(
13472 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13473 fidl::encoding::DefaultFuchsiaResourceDialect,
13474 &mut self.b_1,
13475 decoder,
13476 offset + 192,
13477 _depth
13478 )?;
13479 fidl::decode!(
13480 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13481 fidl::encoding::DefaultFuchsiaResourceDialect,
13482 &mut self.i8_1,
13483 decoder,
13484 offset + 208,
13485 _depth
13486 )?;
13487 fidl::decode!(
13488 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13489 fidl::encoding::DefaultFuchsiaResourceDialect,
13490 &mut self.i16_1,
13491 decoder,
13492 offset + 224,
13493 _depth
13494 )?;
13495 fidl::decode!(
13496 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13497 fidl::encoding::DefaultFuchsiaResourceDialect,
13498 &mut self.i32_1,
13499 decoder,
13500 offset + 240,
13501 _depth
13502 )?;
13503 fidl::decode!(
13504 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13505 fidl::encoding::DefaultFuchsiaResourceDialect,
13506 &mut self.i64_1,
13507 decoder,
13508 offset + 256,
13509 _depth
13510 )?;
13511 fidl::decode!(
13512 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13513 fidl::encoding::DefaultFuchsiaResourceDialect,
13514 &mut self.u8_1,
13515 decoder,
13516 offset + 272,
13517 _depth
13518 )?;
13519 fidl::decode!(
13520 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13521 fidl::encoding::DefaultFuchsiaResourceDialect,
13522 &mut self.u16_1,
13523 decoder,
13524 offset + 288,
13525 _depth
13526 )?;
13527 fidl::decode!(
13528 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13529 fidl::encoding::DefaultFuchsiaResourceDialect,
13530 &mut self.u32_1,
13531 decoder,
13532 offset + 304,
13533 _depth
13534 )?;
13535 fidl::decode!(
13536 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13537 fidl::encoding::DefaultFuchsiaResourceDialect,
13538 &mut self.u64_1,
13539 decoder,
13540 offset + 320,
13541 _depth
13542 )?;
13543 fidl::decode!(
13544 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13545 fidl::encoding::DefaultFuchsiaResourceDialect,
13546 &mut self.f32_1,
13547 decoder,
13548 offset + 336,
13549 _depth
13550 )?;
13551 fidl::decode!(
13552 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13553 fidl::encoding::DefaultFuchsiaResourceDialect,
13554 &mut self.f64_1,
13555 decoder,
13556 offset + 352,
13557 _depth
13558 )?;
13559 fidl::decode!(
13560 fidl::encoding::UnboundedVector<
13561 fidl::encoding::Vector<
13562 fidl::encoding::HandleType<
13563 fidl::NullableHandle,
13564 { fidl::ObjectType::NONE.into_raw() },
13565 2147483648,
13566 >,
13567 2,
13568 >,
13569 >,
13570 fidl::encoding::DefaultFuchsiaResourceDialect,
13571 &mut self.handle_1,
13572 decoder,
13573 offset + 368,
13574 _depth
13575 )?;
13576 fidl::decode!(fidl::encoding::Vector<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_sized_0, decoder, offset + 384, _depth)?;
13577 fidl::decode!(fidl::encoding::Vector<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_sized_0, decoder, offset + 400, _depth)?;
13578 fidl::decode!(fidl::encoding::Vector<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_sized_0, decoder, offset + 416, _depth)?;
13579 fidl::decode!(fidl::encoding::Vector<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_sized_0, decoder, offset + 432, _depth)?;
13580 fidl::decode!(fidl::encoding::Vector<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_sized_0, decoder, offset + 448, _depth)?;
13581 fidl::decode!(fidl::encoding::Vector<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_sized_0, decoder, offset + 464, _depth)?;
13582 fidl::decode!(fidl::encoding::Vector<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_sized_0, decoder, offset + 480, _depth)?;
13583 fidl::decode!(fidl::encoding::Vector<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_sized_0, decoder, offset + 496, _depth)?;
13584 fidl::decode!(fidl::encoding::Vector<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_sized_0, decoder, offset + 512, _depth)?;
13585 fidl::decode!(fidl::encoding::Vector<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_sized_0, decoder, offset + 528, _depth)?;
13586 fidl::decode!(fidl::encoding::Vector<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_sized_0, decoder, offset + 544, _depth)?;
13587 fidl::decode!(
13588 fidl::encoding::Vector<
13589 fidl::encoding::HandleType<
13590 fidl::NullableHandle,
13591 { fidl::ObjectType::NONE.into_raw() },
13592 2147483648,
13593 >,
13594 1,
13595 >,
13596 fidl::encoding::DefaultFuchsiaResourceDialect,
13597 &mut self.handle_sized_0,
13598 decoder,
13599 offset + 560,
13600 _depth
13601 )?;
13602 fidl::decode!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_sized_1, decoder, offset + 576, _depth)?;
13603 fidl::decode!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_sized_1, decoder, offset + 592, _depth)?;
13604 fidl::decode!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_sized_1, decoder, offset + 608, _depth)?;
13605 fidl::decode!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_sized_1, decoder, offset + 624, _depth)?;
13606 fidl::decode!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_sized_1, decoder, offset + 640, _depth)?;
13607 fidl::decode!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_sized_1, decoder, offset + 656, _depth)?;
13608 fidl::decode!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_sized_1, decoder, offset + 672, _depth)?;
13609 fidl::decode!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_sized_1, decoder, offset + 688, _depth)?;
13610 fidl::decode!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_sized_1, decoder, offset + 704, _depth)?;
13611 fidl::decode!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_sized_1, decoder, offset + 720, _depth)?;
13612 fidl::decode!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_sized_1, decoder, offset + 736, _depth)?;
13613 fidl::decode!(
13614 fidl::encoding::Vector<
13615 fidl::encoding::HandleType<
13616 fidl::NullableHandle,
13617 { fidl::ObjectType::NONE.into_raw() },
13618 2147483648,
13619 >,
13620 3,
13621 >,
13622 fidl::encoding::DefaultFuchsiaResourceDialect,
13623 &mut self.handle_sized_1,
13624 decoder,
13625 offset + 752,
13626 _depth
13627 )?;
13628 fidl::decode!(
13629 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
13630 fidl::encoding::DefaultFuchsiaResourceDialect,
13631 &mut self.b_sized_2,
13632 decoder,
13633 offset + 768,
13634 _depth
13635 )?;
13636 fidl::decode!(
13637 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
13638 fidl::encoding::DefaultFuchsiaResourceDialect,
13639 &mut self.i8_sized_2,
13640 decoder,
13641 offset + 784,
13642 _depth
13643 )?;
13644 fidl::decode!(
13645 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
13646 fidl::encoding::DefaultFuchsiaResourceDialect,
13647 &mut self.i16_sized_2,
13648 decoder,
13649 offset + 800,
13650 _depth
13651 )?;
13652 fidl::decode!(
13653 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
13654 fidl::encoding::DefaultFuchsiaResourceDialect,
13655 &mut self.i32_sized_2,
13656 decoder,
13657 offset + 816,
13658 _depth
13659 )?;
13660 fidl::decode!(
13661 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
13662 fidl::encoding::DefaultFuchsiaResourceDialect,
13663 &mut self.i64_sized_2,
13664 decoder,
13665 offset + 832,
13666 _depth
13667 )?;
13668 fidl::decode!(
13669 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
13670 fidl::encoding::DefaultFuchsiaResourceDialect,
13671 &mut self.u8_sized_2,
13672 decoder,
13673 offset + 848,
13674 _depth
13675 )?;
13676 fidl::decode!(
13677 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
13678 fidl::encoding::DefaultFuchsiaResourceDialect,
13679 &mut self.u16_sized_2,
13680 decoder,
13681 offset + 864,
13682 _depth
13683 )?;
13684 fidl::decode!(
13685 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
13686 fidl::encoding::DefaultFuchsiaResourceDialect,
13687 &mut self.u32_sized_2,
13688 decoder,
13689 offset + 880,
13690 _depth
13691 )?;
13692 fidl::decode!(
13693 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
13694 fidl::encoding::DefaultFuchsiaResourceDialect,
13695 &mut self.u64_sized_2,
13696 decoder,
13697 offset + 896,
13698 _depth
13699 )?;
13700 fidl::decode!(
13701 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13702 fidl::encoding::DefaultFuchsiaResourceDialect,
13703 &mut self.f32_sized_2,
13704 decoder,
13705 offset + 912,
13706 _depth
13707 )?;
13708 fidl::decode!(
13709 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13710 fidl::encoding::DefaultFuchsiaResourceDialect,
13711 &mut self.f64_sized_2,
13712 decoder,
13713 offset + 928,
13714 _depth
13715 )?;
13716 fidl::decode!(
13717 fidl::encoding::Vector<
13718 fidl::encoding::Vector<
13719 fidl::encoding::HandleType<
13720 fidl::NullableHandle,
13721 { fidl::ObjectType::NONE.into_raw() },
13722 2147483648,
13723 >,
13724 2,
13725 >,
13726 3,
13727 >,
13728 fidl::encoding::DefaultFuchsiaResourceDialect,
13729 &mut self.handle_sized_2,
13730 decoder,
13731 offset + 944,
13732 _depth
13733 )?;
13734 fidl::decode!(
13735 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13736 fidl::encoding::DefaultFuchsiaResourceDialect,
13737 &mut self.b_nullable_0,
13738 decoder,
13739 offset + 960,
13740 _depth
13741 )?;
13742 fidl::decode!(
13743 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13744 fidl::encoding::DefaultFuchsiaResourceDialect,
13745 &mut self.i8_nullable_0,
13746 decoder,
13747 offset + 976,
13748 _depth
13749 )?;
13750 fidl::decode!(
13751 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13752 fidl::encoding::DefaultFuchsiaResourceDialect,
13753 &mut self.i16_nullable_0,
13754 decoder,
13755 offset + 992,
13756 _depth
13757 )?;
13758 fidl::decode!(
13759 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13760 fidl::encoding::DefaultFuchsiaResourceDialect,
13761 &mut self.i32_nullable_0,
13762 decoder,
13763 offset + 1008,
13764 _depth
13765 )?;
13766 fidl::decode!(
13767 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13768 fidl::encoding::DefaultFuchsiaResourceDialect,
13769 &mut self.i64_nullable_0,
13770 decoder,
13771 offset + 1024,
13772 _depth
13773 )?;
13774 fidl::decode!(
13775 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13776 fidl::encoding::DefaultFuchsiaResourceDialect,
13777 &mut self.u8_nullable_0,
13778 decoder,
13779 offset + 1040,
13780 _depth
13781 )?;
13782 fidl::decode!(
13783 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13784 fidl::encoding::DefaultFuchsiaResourceDialect,
13785 &mut self.u16_nullable_0,
13786 decoder,
13787 offset + 1056,
13788 _depth
13789 )?;
13790 fidl::decode!(
13791 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13792 fidl::encoding::DefaultFuchsiaResourceDialect,
13793 &mut self.u32_nullable_0,
13794 decoder,
13795 offset + 1072,
13796 _depth
13797 )?;
13798 fidl::decode!(
13799 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13800 fidl::encoding::DefaultFuchsiaResourceDialect,
13801 &mut self.u64_nullable_0,
13802 decoder,
13803 offset + 1088,
13804 _depth
13805 )?;
13806 fidl::decode!(
13807 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13808 fidl::encoding::DefaultFuchsiaResourceDialect,
13809 &mut self.f32_nullable_0,
13810 decoder,
13811 offset + 1104,
13812 _depth
13813 )?;
13814 fidl::decode!(
13815 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13816 fidl::encoding::DefaultFuchsiaResourceDialect,
13817 &mut self.f64_nullable_0,
13818 decoder,
13819 offset + 1120,
13820 _depth
13821 )?;
13822 fidl::decode!(
13823 fidl::encoding::Optional<
13824 fidl::encoding::Vector<
13825 fidl::encoding::HandleType<
13826 fidl::NullableHandle,
13827 { fidl::ObjectType::NONE.into_raw() },
13828 2147483648,
13829 >,
13830 1,
13831 >,
13832 >,
13833 fidl::encoding::DefaultFuchsiaResourceDialect,
13834 &mut self.handle_nullable_0,
13835 decoder,
13836 offset + 1136,
13837 _depth
13838 )?;
13839 fidl::decode!(
13840 fidl::encoding::Optional<
13841 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13842 >,
13843 fidl::encoding::DefaultFuchsiaResourceDialect,
13844 &mut self.b_nullable_1,
13845 decoder,
13846 offset + 1152,
13847 _depth
13848 )?;
13849 fidl::decode!(
13850 fidl::encoding::Optional<
13851 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13852 >,
13853 fidl::encoding::DefaultFuchsiaResourceDialect,
13854 &mut self.i8_nullable_1,
13855 decoder,
13856 offset + 1168,
13857 _depth
13858 )?;
13859 fidl::decode!(
13860 fidl::encoding::Optional<
13861 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13862 >,
13863 fidl::encoding::DefaultFuchsiaResourceDialect,
13864 &mut self.i16_nullable_1,
13865 decoder,
13866 offset + 1184,
13867 _depth
13868 )?;
13869 fidl::decode!(
13870 fidl::encoding::Optional<
13871 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13872 >,
13873 fidl::encoding::DefaultFuchsiaResourceDialect,
13874 &mut self.i32_nullable_1,
13875 decoder,
13876 offset + 1200,
13877 _depth
13878 )?;
13879 fidl::decode!(
13880 fidl::encoding::Optional<
13881 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13882 >,
13883 fidl::encoding::DefaultFuchsiaResourceDialect,
13884 &mut self.i64_nullable_1,
13885 decoder,
13886 offset + 1216,
13887 _depth
13888 )?;
13889 fidl::decode!(
13890 fidl::encoding::Optional<
13891 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13892 >,
13893 fidl::encoding::DefaultFuchsiaResourceDialect,
13894 &mut self.u8_nullable_1,
13895 decoder,
13896 offset + 1232,
13897 _depth
13898 )?;
13899 fidl::decode!(
13900 fidl::encoding::Optional<
13901 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13902 >,
13903 fidl::encoding::DefaultFuchsiaResourceDialect,
13904 &mut self.u16_nullable_1,
13905 decoder,
13906 offset + 1248,
13907 _depth
13908 )?;
13909 fidl::decode!(
13910 fidl::encoding::Optional<
13911 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13912 >,
13913 fidl::encoding::DefaultFuchsiaResourceDialect,
13914 &mut self.u32_nullable_1,
13915 decoder,
13916 offset + 1264,
13917 _depth
13918 )?;
13919 fidl::decode!(
13920 fidl::encoding::Optional<
13921 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13922 >,
13923 fidl::encoding::DefaultFuchsiaResourceDialect,
13924 &mut self.u64_nullable_1,
13925 decoder,
13926 offset + 1280,
13927 _depth
13928 )?;
13929 fidl::decode!(
13930 fidl::encoding::Optional<
13931 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13932 >,
13933 fidl::encoding::DefaultFuchsiaResourceDialect,
13934 &mut self.f32_nullable_1,
13935 decoder,
13936 offset + 1296,
13937 _depth
13938 )?;
13939 fidl::decode!(
13940 fidl::encoding::Optional<
13941 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13942 >,
13943 fidl::encoding::DefaultFuchsiaResourceDialect,
13944 &mut self.f64_nullable_1,
13945 decoder,
13946 offset + 1312,
13947 _depth
13948 )?;
13949 fidl::decode!(
13950 fidl::encoding::Optional<
13951 fidl::encoding::UnboundedVector<
13952 fidl::encoding::Vector<
13953 fidl::encoding::HandleType<
13954 fidl::NullableHandle,
13955 { fidl::ObjectType::NONE.into_raw() },
13956 2147483648,
13957 >,
13958 2,
13959 >,
13960 >,
13961 >,
13962 fidl::encoding::DefaultFuchsiaResourceDialect,
13963 &mut self.handle_nullable_1,
13964 decoder,
13965 offset + 1328,
13966 _depth
13967 )?;
13968 fidl::decode!(
13969 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13970 fidl::encoding::DefaultFuchsiaResourceDialect,
13971 &mut self.b_nullable_sized_0,
13972 decoder,
13973 offset + 1344,
13974 _depth
13975 )?;
13976 fidl::decode!(
13977 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13978 fidl::encoding::DefaultFuchsiaResourceDialect,
13979 &mut self.i8_nullable_sized_0,
13980 decoder,
13981 offset + 1360,
13982 _depth
13983 )?;
13984 fidl::decode!(
13985 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13986 fidl::encoding::DefaultFuchsiaResourceDialect,
13987 &mut self.i16_nullable_sized_0,
13988 decoder,
13989 offset + 1376,
13990 _depth
13991 )?;
13992 fidl::decode!(
13993 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13994 fidl::encoding::DefaultFuchsiaResourceDialect,
13995 &mut self.i32_nullable_sized_0,
13996 decoder,
13997 offset + 1392,
13998 _depth
13999 )?;
14000 fidl::decode!(
14001 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
14002 fidl::encoding::DefaultFuchsiaResourceDialect,
14003 &mut self.i64_nullable_sized_0,
14004 decoder,
14005 offset + 1408,
14006 _depth
14007 )?;
14008 fidl::decode!(
14009 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
14010 fidl::encoding::DefaultFuchsiaResourceDialect,
14011 &mut self.u8_nullable_sized_0,
14012 decoder,
14013 offset + 1424,
14014 _depth
14015 )?;
14016 fidl::decode!(
14017 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
14018 fidl::encoding::DefaultFuchsiaResourceDialect,
14019 &mut self.u16_nullable_sized_0,
14020 decoder,
14021 offset + 1440,
14022 _depth
14023 )?;
14024 fidl::decode!(
14025 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
14026 fidl::encoding::DefaultFuchsiaResourceDialect,
14027 &mut self.u32_nullable_sized_0,
14028 decoder,
14029 offset + 1456,
14030 _depth
14031 )?;
14032 fidl::decode!(
14033 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
14034 fidl::encoding::DefaultFuchsiaResourceDialect,
14035 &mut self.u64_nullable_sized_0,
14036 decoder,
14037 offset + 1472,
14038 _depth
14039 )?;
14040 fidl::decode!(
14041 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
14042 fidl::encoding::DefaultFuchsiaResourceDialect,
14043 &mut self.f32_nullable_sized_0,
14044 decoder,
14045 offset + 1488,
14046 _depth
14047 )?;
14048 fidl::decode!(
14049 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
14050 fidl::encoding::DefaultFuchsiaResourceDialect,
14051 &mut self.f64_nullable_sized_0,
14052 decoder,
14053 offset + 1504,
14054 _depth
14055 )?;
14056 fidl::decode!(
14057 fidl::encoding::Optional<
14058 fidl::encoding::Vector<
14059 fidl::encoding::HandleType<
14060 fidl::NullableHandle,
14061 { fidl::ObjectType::NONE.into_raw() },
14062 2147483648,
14063 >,
14064 1,
14065 >,
14066 >,
14067 fidl::encoding::DefaultFuchsiaResourceDialect,
14068 &mut self.handle_nullable_sized_0,
14069 decoder,
14070 offset + 1520,
14071 _depth
14072 )?;
14073 fidl::decode!(
14074 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
14075 fidl::encoding::DefaultFuchsiaResourceDialect,
14076 &mut self.b_nullable_sized_1,
14077 decoder,
14078 offset + 1536,
14079 _depth
14080 )?;
14081 fidl::decode!(
14082 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
14083 fidl::encoding::DefaultFuchsiaResourceDialect,
14084 &mut self.i8_nullable_sized_1,
14085 decoder,
14086 offset + 1552,
14087 _depth
14088 )?;
14089 fidl::decode!(
14090 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
14091 fidl::encoding::DefaultFuchsiaResourceDialect,
14092 &mut self.i16_nullable_sized_1,
14093 decoder,
14094 offset + 1568,
14095 _depth
14096 )?;
14097 fidl::decode!(
14098 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
14099 fidl::encoding::DefaultFuchsiaResourceDialect,
14100 &mut self.i32_nullable_sized_1,
14101 decoder,
14102 offset + 1584,
14103 _depth
14104 )?;
14105 fidl::decode!(
14106 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
14107 fidl::encoding::DefaultFuchsiaResourceDialect,
14108 &mut self.i64_nullable_sized_1,
14109 decoder,
14110 offset + 1600,
14111 _depth
14112 )?;
14113 fidl::decode!(
14114 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
14115 fidl::encoding::DefaultFuchsiaResourceDialect,
14116 &mut self.u8_nullable_sized_1,
14117 decoder,
14118 offset + 1616,
14119 _depth
14120 )?;
14121 fidl::decode!(
14122 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
14123 fidl::encoding::DefaultFuchsiaResourceDialect,
14124 &mut self.u16_nullable_sized_1,
14125 decoder,
14126 offset + 1632,
14127 _depth
14128 )?;
14129 fidl::decode!(
14130 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
14131 fidl::encoding::DefaultFuchsiaResourceDialect,
14132 &mut self.u32_nullable_sized_1,
14133 decoder,
14134 offset + 1648,
14135 _depth
14136 )?;
14137 fidl::decode!(
14138 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
14139 fidl::encoding::DefaultFuchsiaResourceDialect,
14140 &mut self.u64_nullable_sized_1,
14141 decoder,
14142 offset + 1664,
14143 _depth
14144 )?;
14145 fidl::decode!(
14146 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
14147 fidl::encoding::DefaultFuchsiaResourceDialect,
14148 &mut self.f32_nullable_sized_1,
14149 decoder,
14150 offset + 1680,
14151 _depth
14152 )?;
14153 fidl::decode!(
14154 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
14155 fidl::encoding::DefaultFuchsiaResourceDialect,
14156 &mut self.f64_nullable_sized_1,
14157 decoder,
14158 offset + 1696,
14159 _depth
14160 )?;
14161 fidl::decode!(
14162 fidl::encoding::Optional<
14163 fidl::encoding::Vector<
14164 fidl::encoding::HandleType<
14165 fidl::NullableHandle,
14166 { fidl::ObjectType::NONE.into_raw() },
14167 2147483648,
14168 >,
14169 3,
14170 >,
14171 >,
14172 fidl::encoding::DefaultFuchsiaResourceDialect,
14173 &mut self.handle_nullable_sized_1,
14174 decoder,
14175 offset + 1712,
14176 _depth
14177 )?;
14178 fidl::decode!(
14179 fidl::encoding::Optional<
14180 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
14181 >,
14182 fidl::encoding::DefaultFuchsiaResourceDialect,
14183 &mut self.b_nullable_sized_2,
14184 decoder,
14185 offset + 1728,
14186 _depth
14187 )?;
14188 fidl::decode!(
14189 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>>,
14190 fidl::encoding::DefaultFuchsiaResourceDialect,
14191 &mut self.i8_nullable_sized_2,
14192 decoder,
14193 offset + 1744,
14194 _depth
14195 )?;
14196 fidl::decode!(
14197 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>>,
14198 fidl::encoding::DefaultFuchsiaResourceDialect,
14199 &mut self.i16_nullable_sized_2,
14200 decoder,
14201 offset + 1760,
14202 _depth
14203 )?;
14204 fidl::decode!(
14205 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>>,
14206 fidl::encoding::DefaultFuchsiaResourceDialect,
14207 &mut self.i32_nullable_sized_2,
14208 decoder,
14209 offset + 1776,
14210 _depth
14211 )?;
14212 fidl::decode!(
14213 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>>,
14214 fidl::encoding::DefaultFuchsiaResourceDialect,
14215 &mut self.i64_nullable_sized_2,
14216 decoder,
14217 offset + 1792,
14218 _depth
14219 )?;
14220 fidl::decode!(
14221 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>>,
14222 fidl::encoding::DefaultFuchsiaResourceDialect,
14223 &mut self.u8_nullable_sized_2,
14224 decoder,
14225 offset + 1808,
14226 _depth
14227 )?;
14228 fidl::decode!(
14229 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>>,
14230 fidl::encoding::DefaultFuchsiaResourceDialect,
14231 &mut self.u16_nullable_sized_2,
14232 decoder,
14233 offset + 1824,
14234 _depth
14235 )?;
14236 fidl::decode!(
14237 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>>,
14238 fidl::encoding::DefaultFuchsiaResourceDialect,
14239 &mut self.u32_nullable_sized_2,
14240 decoder,
14241 offset + 1840,
14242 _depth
14243 )?;
14244 fidl::decode!(
14245 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>>,
14246 fidl::encoding::DefaultFuchsiaResourceDialect,
14247 &mut self.u64_nullable_sized_2,
14248 decoder,
14249 offset + 1856,
14250 _depth
14251 )?;
14252 fidl::decode!(
14253 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>>,
14254 fidl::encoding::DefaultFuchsiaResourceDialect,
14255 &mut self.f32_nullable_sized_2,
14256 decoder,
14257 offset + 1872,
14258 _depth
14259 )?;
14260 fidl::decode!(
14261 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>>,
14262 fidl::encoding::DefaultFuchsiaResourceDialect,
14263 &mut self.f64_nullable_sized_2,
14264 decoder,
14265 offset + 1888,
14266 _depth
14267 )?;
14268 fidl::decode!(
14269 fidl::encoding::Optional<
14270 fidl::encoding::Vector<
14271 fidl::encoding::Vector<
14272 fidl::encoding::HandleType<
14273 fidl::NullableHandle,
14274 { fidl::ObjectType::NONE.into_raw() },
14275 2147483648,
14276 >,
14277 2,
14278 >,
14279 3,
14280 >,
14281 >,
14282 fidl::encoding::DefaultFuchsiaResourceDialect,
14283 &mut self.handle_nullable_sized_2,
14284 decoder,
14285 offset + 1904,
14286 _depth
14287 )?;
14288 Ok(())
14289 }
14290 }
14291
14292 impl AllTypesTable {
14293 #[inline(always)]
14294 fn max_ordinal_present(&self) -> u64 {
14295 if let Some(_) = self.xunion_member {
14296 return 21;
14297 }
14298 if let Some(_) = self.table_member {
14299 return 20;
14300 }
14301 if let Some(_) = self.vector_member {
14302 return 19;
14303 }
14304 if let Some(_) = self.array_member {
14305 return 18;
14306 }
14307 if let Some(_) = self.union_member {
14308 return 17;
14309 }
14310 if let Some(_) = self.struct_member {
14311 return 16;
14312 }
14313 if let Some(_) = self.string_member {
14314 return 15;
14315 }
14316 if let Some(_) = self.handle_member {
14317 return 14;
14318 }
14319 if let Some(_) = self.bits_member {
14320 return 13;
14321 }
14322 if let Some(_) = self.enum_member {
14323 return 12;
14324 }
14325 if let Some(_) = self.float64_member {
14326 return 11;
14327 }
14328 if let Some(_) = self.float32_member {
14329 return 10;
14330 }
14331 if let Some(_) = self.uint64_member {
14332 return 9;
14333 }
14334 if let Some(_) = self.uint32_member {
14335 return 8;
14336 }
14337 if let Some(_) = self.uint16_member {
14338 return 7;
14339 }
14340 if let Some(_) = self.uint8_member {
14341 return 6;
14342 }
14343 if let Some(_) = self.int64_member {
14344 return 5;
14345 }
14346 if let Some(_) = self.int32_member {
14347 return 4;
14348 }
14349 if let Some(_) = self.int16_member {
14350 return 3;
14351 }
14352 if let Some(_) = self.int8_member {
14353 return 2;
14354 }
14355 if let Some(_) = self.bool_member {
14356 return 1;
14357 }
14358 0
14359 }
14360 }
14361
14362 impl fidl::encoding::ResourceTypeMarker for AllTypesTable {
14363 type Borrowed<'a> = &'a mut Self;
14364 fn take_or_borrow<'a>(
14365 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
14366 ) -> Self::Borrowed<'a> {
14367 value
14368 }
14369 }
14370
14371 unsafe impl fidl::encoding::TypeMarker for AllTypesTable {
14372 type Owned = Self;
14373
14374 #[inline(always)]
14375 fn inline_align(_context: fidl::encoding::Context) -> usize {
14376 8
14377 }
14378
14379 #[inline(always)]
14380 fn inline_size(_context: fidl::encoding::Context) -> usize {
14381 16
14382 }
14383 }
14384
14385 unsafe impl fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>
14386 for &mut AllTypesTable
14387 {
14388 unsafe fn encode(
14389 self,
14390 encoder: &mut fidl::encoding::Encoder<
14391 '_,
14392 fidl::encoding::DefaultFuchsiaResourceDialect,
14393 >,
14394 offset: usize,
14395 mut depth: fidl::encoding::Depth,
14396 ) -> fidl::Result<()> {
14397 encoder.debug_check_bounds::<AllTypesTable>(offset);
14398 let max_ordinal: u64 = self.max_ordinal_present();
14400 encoder.write_num(max_ordinal, offset);
14401 encoder.write_num(fidl::encoding::ALLOC_PRESENT_U64, offset + 8);
14402 if max_ordinal == 0 {
14404 return Ok(());
14405 }
14406 depth.increment()?;
14407 let envelope_size = 8;
14408 let bytes_len = max_ordinal as usize * envelope_size;
14409 #[allow(unused_variables)]
14410 let offset = encoder.out_of_line_offset(bytes_len);
14411 let mut _prev_end_offset: usize = 0;
14412 if 1 > max_ordinal {
14413 return Ok(());
14414 }
14415
14416 let cur_offset: usize = (1 - 1) * envelope_size;
14419
14420 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14422
14423 fidl::encoding::encode_in_envelope_optional::<
14428 bool,
14429 fidl::encoding::DefaultFuchsiaResourceDialect,
14430 >(
14431 self.bool_member.as_ref().map(<bool as fidl::encoding::ValueTypeMarker>::borrow),
14432 encoder,
14433 offset + cur_offset,
14434 depth,
14435 )?;
14436
14437 _prev_end_offset = cur_offset + envelope_size;
14438 if 2 > max_ordinal {
14439 return Ok(());
14440 }
14441
14442 let cur_offset: usize = (2 - 1) * envelope_size;
14445
14446 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14448
14449 fidl::encoding::encode_in_envelope_optional::<
14454 i8,
14455 fidl::encoding::DefaultFuchsiaResourceDialect,
14456 >(
14457 self.int8_member.as_ref().map(<i8 as fidl::encoding::ValueTypeMarker>::borrow),
14458 encoder,
14459 offset + cur_offset,
14460 depth,
14461 )?;
14462
14463 _prev_end_offset = cur_offset + envelope_size;
14464 if 3 > max_ordinal {
14465 return Ok(());
14466 }
14467
14468 let cur_offset: usize = (3 - 1) * envelope_size;
14471
14472 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14474
14475 fidl::encoding::encode_in_envelope_optional::<
14480 i16,
14481 fidl::encoding::DefaultFuchsiaResourceDialect,
14482 >(
14483 self.int16_member.as_ref().map(<i16 as fidl::encoding::ValueTypeMarker>::borrow),
14484 encoder,
14485 offset + cur_offset,
14486 depth,
14487 )?;
14488
14489 _prev_end_offset = cur_offset + envelope_size;
14490 if 4 > max_ordinal {
14491 return Ok(());
14492 }
14493
14494 let cur_offset: usize = (4 - 1) * envelope_size;
14497
14498 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14500
14501 fidl::encoding::encode_in_envelope_optional::<
14506 i32,
14507 fidl::encoding::DefaultFuchsiaResourceDialect,
14508 >(
14509 self.int32_member.as_ref().map(<i32 as fidl::encoding::ValueTypeMarker>::borrow),
14510 encoder,
14511 offset + cur_offset,
14512 depth,
14513 )?;
14514
14515 _prev_end_offset = cur_offset + envelope_size;
14516 if 5 > max_ordinal {
14517 return Ok(());
14518 }
14519
14520 let cur_offset: usize = (5 - 1) * envelope_size;
14523
14524 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14526
14527 fidl::encoding::encode_in_envelope_optional::<
14532 i64,
14533 fidl::encoding::DefaultFuchsiaResourceDialect,
14534 >(
14535 self.int64_member.as_ref().map(<i64 as fidl::encoding::ValueTypeMarker>::borrow),
14536 encoder,
14537 offset + cur_offset,
14538 depth,
14539 )?;
14540
14541 _prev_end_offset = cur_offset + envelope_size;
14542 if 6 > max_ordinal {
14543 return Ok(());
14544 }
14545
14546 let cur_offset: usize = (6 - 1) * envelope_size;
14549
14550 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14552
14553 fidl::encoding::encode_in_envelope_optional::<
14558 u8,
14559 fidl::encoding::DefaultFuchsiaResourceDialect,
14560 >(
14561 self.uint8_member.as_ref().map(<u8 as fidl::encoding::ValueTypeMarker>::borrow),
14562 encoder,
14563 offset + cur_offset,
14564 depth,
14565 )?;
14566
14567 _prev_end_offset = cur_offset + envelope_size;
14568 if 7 > max_ordinal {
14569 return Ok(());
14570 }
14571
14572 let cur_offset: usize = (7 - 1) * envelope_size;
14575
14576 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14578
14579 fidl::encoding::encode_in_envelope_optional::<
14584 u16,
14585 fidl::encoding::DefaultFuchsiaResourceDialect,
14586 >(
14587 self.uint16_member.as_ref().map(<u16 as fidl::encoding::ValueTypeMarker>::borrow),
14588 encoder,
14589 offset + cur_offset,
14590 depth,
14591 )?;
14592
14593 _prev_end_offset = cur_offset + envelope_size;
14594 if 8 > max_ordinal {
14595 return Ok(());
14596 }
14597
14598 let cur_offset: usize = (8 - 1) * envelope_size;
14601
14602 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14604
14605 fidl::encoding::encode_in_envelope_optional::<
14610 u32,
14611 fidl::encoding::DefaultFuchsiaResourceDialect,
14612 >(
14613 self.uint32_member.as_ref().map(<u32 as fidl::encoding::ValueTypeMarker>::borrow),
14614 encoder,
14615 offset + cur_offset,
14616 depth,
14617 )?;
14618
14619 _prev_end_offset = cur_offset + envelope_size;
14620 if 9 > max_ordinal {
14621 return Ok(());
14622 }
14623
14624 let cur_offset: usize = (9 - 1) * envelope_size;
14627
14628 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14630
14631 fidl::encoding::encode_in_envelope_optional::<
14636 u64,
14637 fidl::encoding::DefaultFuchsiaResourceDialect,
14638 >(
14639 self.uint64_member.as_ref().map(<u64 as fidl::encoding::ValueTypeMarker>::borrow),
14640 encoder,
14641 offset + cur_offset,
14642 depth,
14643 )?;
14644
14645 _prev_end_offset = cur_offset + envelope_size;
14646 if 10 > max_ordinal {
14647 return Ok(());
14648 }
14649
14650 let cur_offset: usize = (10 - 1) * envelope_size;
14653
14654 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14656
14657 fidl::encoding::encode_in_envelope_optional::<
14662 f32,
14663 fidl::encoding::DefaultFuchsiaResourceDialect,
14664 >(
14665 self.float32_member.as_ref().map(<f32 as fidl::encoding::ValueTypeMarker>::borrow),
14666 encoder,
14667 offset + cur_offset,
14668 depth,
14669 )?;
14670
14671 _prev_end_offset = cur_offset + envelope_size;
14672 if 11 > max_ordinal {
14673 return Ok(());
14674 }
14675
14676 let cur_offset: usize = (11 - 1) * envelope_size;
14679
14680 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14682
14683 fidl::encoding::encode_in_envelope_optional::<
14688 f64,
14689 fidl::encoding::DefaultFuchsiaResourceDialect,
14690 >(
14691 self.float64_member.as_ref().map(<f64 as fidl::encoding::ValueTypeMarker>::borrow),
14692 encoder,
14693 offset + cur_offset,
14694 depth,
14695 )?;
14696
14697 _prev_end_offset = cur_offset + envelope_size;
14698 if 12 > max_ordinal {
14699 return Ok(());
14700 }
14701
14702 let cur_offset: usize = (12 - 1) * envelope_size;
14705
14706 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14708
14709 fidl::encoding::encode_in_envelope_optional::<
14714 DefaultEnum,
14715 fidl::encoding::DefaultFuchsiaResourceDialect,
14716 >(
14717 self.enum_member
14718 .as_ref()
14719 .map(<DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow),
14720 encoder,
14721 offset + cur_offset,
14722 depth,
14723 )?;
14724
14725 _prev_end_offset = cur_offset + envelope_size;
14726 if 13 > max_ordinal {
14727 return Ok(());
14728 }
14729
14730 let cur_offset: usize = (13 - 1) * envelope_size;
14733
14734 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14736
14737 fidl::encoding::encode_in_envelope_optional::<
14742 DefaultBits,
14743 fidl::encoding::DefaultFuchsiaResourceDialect,
14744 >(
14745 self.bits_member
14746 .as_ref()
14747 .map(<DefaultBits as fidl::encoding::ValueTypeMarker>::borrow),
14748 encoder,
14749 offset + cur_offset,
14750 depth,
14751 )?;
14752
14753 _prev_end_offset = cur_offset + envelope_size;
14754 if 14 > max_ordinal {
14755 return Ok(());
14756 }
14757
14758 let cur_offset: usize = (14 - 1) * envelope_size;
14761
14762 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14764
14765 fidl::encoding::encode_in_envelope_optional::<
14770 fidl::encoding::HandleType<
14771 fidl::NullableHandle,
14772 { fidl::ObjectType::NONE.into_raw() },
14773 2147483648,
14774 >,
14775 fidl::encoding::DefaultFuchsiaResourceDialect,
14776 >(
14777 self.handle_member.as_mut().map(
14778 <fidl::encoding::HandleType<
14779 fidl::NullableHandle,
14780 { fidl::ObjectType::NONE.into_raw() },
14781 2147483648,
14782 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow,
14783 ),
14784 encoder,
14785 offset + cur_offset,
14786 depth,
14787 )?;
14788
14789 _prev_end_offset = cur_offset + envelope_size;
14790 if 15 > max_ordinal {
14791 return Ok(());
14792 }
14793
14794 let cur_offset: usize = (15 - 1) * envelope_size;
14797
14798 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14800
14801 fidl::encoding::encode_in_envelope_optional::<
14806 fidl::encoding::UnboundedString,
14807 fidl::encoding::DefaultFuchsiaResourceDialect,
14808 >(
14809 self.string_member.as_ref().map(
14810 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow,
14811 ),
14812 encoder,
14813 offset + cur_offset,
14814 depth,
14815 )?;
14816
14817 _prev_end_offset = cur_offset + envelope_size;
14818 if 16 > max_ordinal {
14819 return Ok(());
14820 }
14821
14822 let cur_offset: usize = (16 - 1) * envelope_size;
14825
14826 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14828
14829 fidl::encoding::encode_in_envelope_optional::<
14834 ThisIsAStruct,
14835 fidl::encoding::DefaultFuchsiaResourceDialect,
14836 >(
14837 self.struct_member
14838 .as_ref()
14839 .map(<ThisIsAStruct as fidl::encoding::ValueTypeMarker>::borrow),
14840 encoder,
14841 offset + cur_offset,
14842 depth,
14843 )?;
14844
14845 _prev_end_offset = cur_offset + envelope_size;
14846 if 17 > max_ordinal {
14847 return Ok(());
14848 }
14849
14850 let cur_offset: usize = (17 - 1) * envelope_size;
14853
14854 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14856
14857 fidl::encoding::encode_in_envelope_optional::<
14862 ThisIsAUnion,
14863 fidl::encoding::DefaultFuchsiaResourceDialect,
14864 >(
14865 self.union_member
14866 .as_ref()
14867 .map(<ThisIsAUnion as fidl::encoding::ValueTypeMarker>::borrow),
14868 encoder,
14869 offset + cur_offset,
14870 depth,
14871 )?;
14872
14873 _prev_end_offset = cur_offset + envelope_size;
14874 if 18 > max_ordinal {
14875 return Ok(());
14876 }
14877
14878 let cur_offset: usize = (18 - 1) * envelope_size;
14881
14882 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14884
14885 fidl::encoding::encode_in_envelope_optional::<
14890 fidl::encoding::Array<u32, 3>,
14891 fidl::encoding::DefaultFuchsiaResourceDialect,
14892 >(
14893 self.array_member.as_ref().map(
14894 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow,
14895 ),
14896 encoder,
14897 offset + cur_offset,
14898 depth,
14899 )?;
14900
14901 _prev_end_offset = cur_offset + envelope_size;
14902 if 19 > max_ordinal {
14903 return Ok(());
14904 }
14905
14906 let cur_offset: usize = (19 - 1) * envelope_size;
14909
14910 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14912
14913 fidl::encoding::encode_in_envelope_optional::<fidl::encoding::UnboundedVector<u32>, fidl::encoding::DefaultFuchsiaResourceDialect>(
14918 self.vector_member.as_ref().map(<fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow),
14919 encoder, offset + cur_offset, depth
14920 )?;
14921
14922 _prev_end_offset = cur_offset + envelope_size;
14923 if 20 > max_ordinal {
14924 return Ok(());
14925 }
14926
14927 let cur_offset: usize = (20 - 1) * envelope_size;
14930
14931 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14933
14934 fidl::encoding::encode_in_envelope_optional::<
14939 ThisIsATable,
14940 fidl::encoding::DefaultFuchsiaResourceDialect,
14941 >(
14942 self.table_member
14943 .as_ref()
14944 .map(<ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow),
14945 encoder,
14946 offset + cur_offset,
14947 depth,
14948 )?;
14949
14950 _prev_end_offset = cur_offset + envelope_size;
14951 if 21 > max_ordinal {
14952 return Ok(());
14953 }
14954
14955 let cur_offset: usize = (21 - 1) * envelope_size;
14958
14959 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14961
14962 fidl::encoding::encode_in_envelope_optional::<
14967 ThisIsAXunion,
14968 fidl::encoding::DefaultFuchsiaResourceDialect,
14969 >(
14970 self.xunion_member
14971 .as_ref()
14972 .map(<ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow),
14973 encoder,
14974 offset + cur_offset,
14975 depth,
14976 )?;
14977
14978 _prev_end_offset = cur_offset + envelope_size;
14979
14980 Ok(())
14981 }
14982 }
14983
14984 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for AllTypesTable {
14985 #[inline(always)]
14986 fn new_empty() -> Self {
14987 Self::default()
14988 }
14989
14990 unsafe fn decode(
14991 &mut self,
14992 decoder: &mut fidl::encoding::Decoder<
14993 '_,
14994 fidl::encoding::DefaultFuchsiaResourceDialect,
14995 >,
14996 offset: usize,
14997 mut depth: fidl::encoding::Depth,
14998 ) -> fidl::Result<()> {
14999 decoder.debug_check_bounds::<Self>(offset);
15000 let len = match fidl::encoding::decode_vector_header(decoder, offset)? {
15001 None => return Err(fidl::Error::NotNullable),
15002 Some(len) => len,
15003 };
15004 if len == 0 {
15006 return Ok(());
15007 };
15008 depth.increment()?;
15009 let envelope_size = 8;
15010 let bytes_len = len * envelope_size;
15011 let offset = decoder.out_of_line_offset(bytes_len)?;
15012 let mut _next_ordinal_to_read = 0;
15014 let mut next_offset = offset;
15015 let end_offset = offset + bytes_len;
15016 _next_ordinal_to_read += 1;
15017 if next_offset >= end_offset {
15018 return Ok(());
15019 }
15020
15021 while _next_ordinal_to_read < 1 {
15023 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15024 _next_ordinal_to_read += 1;
15025 next_offset += envelope_size;
15026 }
15027
15028 let next_out_of_line = decoder.next_out_of_line();
15029 let handles_before = decoder.remaining_handles();
15030 if let Some((inlined, num_bytes, num_handles)) =
15031 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15032 {
15033 let member_inline_size =
15034 <bool as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15035 if inlined != (member_inline_size <= 4) {
15036 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15037 }
15038 let inner_offset;
15039 let mut inner_depth = depth.clone();
15040 if inlined {
15041 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15042 inner_offset = next_offset;
15043 } else {
15044 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15045 inner_depth.increment()?;
15046 }
15047 let val_ref = self.bool_member.get_or_insert_with(|| {
15048 fidl::new_empty!(bool, fidl::encoding::DefaultFuchsiaResourceDialect)
15049 });
15050 fidl::decode!(
15051 bool,
15052 fidl::encoding::DefaultFuchsiaResourceDialect,
15053 val_ref,
15054 decoder,
15055 inner_offset,
15056 inner_depth
15057 )?;
15058 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15059 {
15060 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15061 }
15062 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15063 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15064 }
15065 }
15066
15067 next_offset += envelope_size;
15068 _next_ordinal_to_read += 1;
15069 if next_offset >= end_offset {
15070 return Ok(());
15071 }
15072
15073 while _next_ordinal_to_read < 2 {
15075 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15076 _next_ordinal_to_read += 1;
15077 next_offset += envelope_size;
15078 }
15079
15080 let next_out_of_line = decoder.next_out_of_line();
15081 let handles_before = decoder.remaining_handles();
15082 if let Some((inlined, num_bytes, num_handles)) =
15083 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15084 {
15085 let member_inline_size =
15086 <i8 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15087 if inlined != (member_inline_size <= 4) {
15088 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15089 }
15090 let inner_offset;
15091 let mut inner_depth = depth.clone();
15092 if inlined {
15093 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15094 inner_offset = next_offset;
15095 } else {
15096 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15097 inner_depth.increment()?;
15098 }
15099 let val_ref = self.int8_member.get_or_insert_with(|| {
15100 fidl::new_empty!(i8, fidl::encoding::DefaultFuchsiaResourceDialect)
15101 });
15102 fidl::decode!(
15103 i8,
15104 fidl::encoding::DefaultFuchsiaResourceDialect,
15105 val_ref,
15106 decoder,
15107 inner_offset,
15108 inner_depth
15109 )?;
15110 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15111 {
15112 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15113 }
15114 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15115 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15116 }
15117 }
15118
15119 next_offset += envelope_size;
15120 _next_ordinal_to_read += 1;
15121 if next_offset >= end_offset {
15122 return Ok(());
15123 }
15124
15125 while _next_ordinal_to_read < 3 {
15127 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15128 _next_ordinal_to_read += 1;
15129 next_offset += envelope_size;
15130 }
15131
15132 let next_out_of_line = decoder.next_out_of_line();
15133 let handles_before = decoder.remaining_handles();
15134 if let Some((inlined, num_bytes, num_handles)) =
15135 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15136 {
15137 let member_inline_size =
15138 <i16 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15139 if inlined != (member_inline_size <= 4) {
15140 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15141 }
15142 let inner_offset;
15143 let mut inner_depth = depth.clone();
15144 if inlined {
15145 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15146 inner_offset = next_offset;
15147 } else {
15148 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15149 inner_depth.increment()?;
15150 }
15151 let val_ref = self.int16_member.get_or_insert_with(|| {
15152 fidl::new_empty!(i16, fidl::encoding::DefaultFuchsiaResourceDialect)
15153 });
15154 fidl::decode!(
15155 i16,
15156 fidl::encoding::DefaultFuchsiaResourceDialect,
15157 val_ref,
15158 decoder,
15159 inner_offset,
15160 inner_depth
15161 )?;
15162 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15163 {
15164 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15165 }
15166 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15167 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15168 }
15169 }
15170
15171 next_offset += envelope_size;
15172 _next_ordinal_to_read += 1;
15173 if next_offset >= end_offset {
15174 return Ok(());
15175 }
15176
15177 while _next_ordinal_to_read < 4 {
15179 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15180 _next_ordinal_to_read += 1;
15181 next_offset += envelope_size;
15182 }
15183
15184 let next_out_of_line = decoder.next_out_of_line();
15185 let handles_before = decoder.remaining_handles();
15186 if let Some((inlined, num_bytes, num_handles)) =
15187 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15188 {
15189 let member_inline_size =
15190 <i32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15191 if inlined != (member_inline_size <= 4) {
15192 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15193 }
15194 let inner_offset;
15195 let mut inner_depth = depth.clone();
15196 if inlined {
15197 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15198 inner_offset = next_offset;
15199 } else {
15200 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15201 inner_depth.increment()?;
15202 }
15203 let val_ref = self.int32_member.get_or_insert_with(|| {
15204 fidl::new_empty!(i32, fidl::encoding::DefaultFuchsiaResourceDialect)
15205 });
15206 fidl::decode!(
15207 i32,
15208 fidl::encoding::DefaultFuchsiaResourceDialect,
15209 val_ref,
15210 decoder,
15211 inner_offset,
15212 inner_depth
15213 )?;
15214 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15215 {
15216 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15217 }
15218 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15219 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15220 }
15221 }
15222
15223 next_offset += envelope_size;
15224 _next_ordinal_to_read += 1;
15225 if next_offset >= end_offset {
15226 return Ok(());
15227 }
15228
15229 while _next_ordinal_to_read < 5 {
15231 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15232 _next_ordinal_to_read += 1;
15233 next_offset += envelope_size;
15234 }
15235
15236 let next_out_of_line = decoder.next_out_of_line();
15237 let handles_before = decoder.remaining_handles();
15238 if let Some((inlined, num_bytes, num_handles)) =
15239 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15240 {
15241 let member_inline_size =
15242 <i64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15243 if inlined != (member_inline_size <= 4) {
15244 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15245 }
15246 let inner_offset;
15247 let mut inner_depth = depth.clone();
15248 if inlined {
15249 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15250 inner_offset = next_offset;
15251 } else {
15252 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15253 inner_depth.increment()?;
15254 }
15255 let val_ref = self.int64_member.get_or_insert_with(|| {
15256 fidl::new_empty!(i64, fidl::encoding::DefaultFuchsiaResourceDialect)
15257 });
15258 fidl::decode!(
15259 i64,
15260 fidl::encoding::DefaultFuchsiaResourceDialect,
15261 val_ref,
15262 decoder,
15263 inner_offset,
15264 inner_depth
15265 )?;
15266 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15267 {
15268 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15269 }
15270 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15271 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15272 }
15273 }
15274
15275 next_offset += envelope_size;
15276 _next_ordinal_to_read += 1;
15277 if next_offset >= end_offset {
15278 return Ok(());
15279 }
15280
15281 while _next_ordinal_to_read < 6 {
15283 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15284 _next_ordinal_to_read += 1;
15285 next_offset += envelope_size;
15286 }
15287
15288 let next_out_of_line = decoder.next_out_of_line();
15289 let handles_before = decoder.remaining_handles();
15290 if let Some((inlined, num_bytes, num_handles)) =
15291 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15292 {
15293 let member_inline_size =
15294 <u8 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15295 if inlined != (member_inline_size <= 4) {
15296 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15297 }
15298 let inner_offset;
15299 let mut inner_depth = depth.clone();
15300 if inlined {
15301 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15302 inner_offset = next_offset;
15303 } else {
15304 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15305 inner_depth.increment()?;
15306 }
15307 let val_ref = self.uint8_member.get_or_insert_with(|| {
15308 fidl::new_empty!(u8, fidl::encoding::DefaultFuchsiaResourceDialect)
15309 });
15310 fidl::decode!(
15311 u8,
15312 fidl::encoding::DefaultFuchsiaResourceDialect,
15313 val_ref,
15314 decoder,
15315 inner_offset,
15316 inner_depth
15317 )?;
15318 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15319 {
15320 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15321 }
15322 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15323 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15324 }
15325 }
15326
15327 next_offset += envelope_size;
15328 _next_ordinal_to_read += 1;
15329 if next_offset >= end_offset {
15330 return Ok(());
15331 }
15332
15333 while _next_ordinal_to_read < 7 {
15335 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15336 _next_ordinal_to_read += 1;
15337 next_offset += envelope_size;
15338 }
15339
15340 let next_out_of_line = decoder.next_out_of_line();
15341 let handles_before = decoder.remaining_handles();
15342 if let Some((inlined, num_bytes, num_handles)) =
15343 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15344 {
15345 let member_inline_size =
15346 <u16 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15347 if inlined != (member_inline_size <= 4) {
15348 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15349 }
15350 let inner_offset;
15351 let mut inner_depth = depth.clone();
15352 if inlined {
15353 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15354 inner_offset = next_offset;
15355 } else {
15356 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15357 inner_depth.increment()?;
15358 }
15359 let val_ref = self.uint16_member.get_or_insert_with(|| {
15360 fidl::new_empty!(u16, fidl::encoding::DefaultFuchsiaResourceDialect)
15361 });
15362 fidl::decode!(
15363 u16,
15364 fidl::encoding::DefaultFuchsiaResourceDialect,
15365 val_ref,
15366 decoder,
15367 inner_offset,
15368 inner_depth
15369 )?;
15370 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15371 {
15372 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15373 }
15374 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15375 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15376 }
15377 }
15378
15379 next_offset += envelope_size;
15380 _next_ordinal_to_read += 1;
15381 if next_offset >= end_offset {
15382 return Ok(());
15383 }
15384
15385 while _next_ordinal_to_read < 8 {
15387 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15388 _next_ordinal_to_read += 1;
15389 next_offset += envelope_size;
15390 }
15391
15392 let next_out_of_line = decoder.next_out_of_line();
15393 let handles_before = decoder.remaining_handles();
15394 if let Some((inlined, num_bytes, num_handles)) =
15395 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15396 {
15397 let member_inline_size =
15398 <u32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15399 if inlined != (member_inline_size <= 4) {
15400 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15401 }
15402 let inner_offset;
15403 let mut inner_depth = depth.clone();
15404 if inlined {
15405 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15406 inner_offset = next_offset;
15407 } else {
15408 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15409 inner_depth.increment()?;
15410 }
15411 let val_ref = self.uint32_member.get_or_insert_with(|| {
15412 fidl::new_empty!(u32, fidl::encoding::DefaultFuchsiaResourceDialect)
15413 });
15414 fidl::decode!(
15415 u32,
15416 fidl::encoding::DefaultFuchsiaResourceDialect,
15417 val_ref,
15418 decoder,
15419 inner_offset,
15420 inner_depth
15421 )?;
15422 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15423 {
15424 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15425 }
15426 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15427 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15428 }
15429 }
15430
15431 next_offset += envelope_size;
15432 _next_ordinal_to_read += 1;
15433 if next_offset >= end_offset {
15434 return Ok(());
15435 }
15436
15437 while _next_ordinal_to_read < 9 {
15439 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15440 _next_ordinal_to_read += 1;
15441 next_offset += envelope_size;
15442 }
15443
15444 let next_out_of_line = decoder.next_out_of_line();
15445 let handles_before = decoder.remaining_handles();
15446 if let Some((inlined, num_bytes, num_handles)) =
15447 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15448 {
15449 let member_inline_size =
15450 <u64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15451 if inlined != (member_inline_size <= 4) {
15452 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15453 }
15454 let inner_offset;
15455 let mut inner_depth = depth.clone();
15456 if inlined {
15457 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15458 inner_offset = next_offset;
15459 } else {
15460 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15461 inner_depth.increment()?;
15462 }
15463 let val_ref = self.uint64_member.get_or_insert_with(|| {
15464 fidl::new_empty!(u64, fidl::encoding::DefaultFuchsiaResourceDialect)
15465 });
15466 fidl::decode!(
15467 u64,
15468 fidl::encoding::DefaultFuchsiaResourceDialect,
15469 val_ref,
15470 decoder,
15471 inner_offset,
15472 inner_depth
15473 )?;
15474 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15475 {
15476 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15477 }
15478 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15479 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15480 }
15481 }
15482
15483 next_offset += envelope_size;
15484 _next_ordinal_to_read += 1;
15485 if next_offset >= end_offset {
15486 return Ok(());
15487 }
15488
15489 while _next_ordinal_to_read < 10 {
15491 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15492 _next_ordinal_to_read += 1;
15493 next_offset += envelope_size;
15494 }
15495
15496 let next_out_of_line = decoder.next_out_of_line();
15497 let handles_before = decoder.remaining_handles();
15498 if let Some((inlined, num_bytes, num_handles)) =
15499 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15500 {
15501 let member_inline_size =
15502 <f32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15503 if inlined != (member_inline_size <= 4) {
15504 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15505 }
15506 let inner_offset;
15507 let mut inner_depth = depth.clone();
15508 if inlined {
15509 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15510 inner_offset = next_offset;
15511 } else {
15512 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15513 inner_depth.increment()?;
15514 }
15515 let val_ref = self.float32_member.get_or_insert_with(|| {
15516 fidl::new_empty!(f32, fidl::encoding::DefaultFuchsiaResourceDialect)
15517 });
15518 fidl::decode!(
15519 f32,
15520 fidl::encoding::DefaultFuchsiaResourceDialect,
15521 val_ref,
15522 decoder,
15523 inner_offset,
15524 inner_depth
15525 )?;
15526 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15527 {
15528 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15529 }
15530 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15531 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15532 }
15533 }
15534
15535 next_offset += envelope_size;
15536 _next_ordinal_to_read += 1;
15537 if next_offset >= end_offset {
15538 return Ok(());
15539 }
15540
15541 while _next_ordinal_to_read < 11 {
15543 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15544 _next_ordinal_to_read += 1;
15545 next_offset += envelope_size;
15546 }
15547
15548 let next_out_of_line = decoder.next_out_of_line();
15549 let handles_before = decoder.remaining_handles();
15550 if let Some((inlined, num_bytes, num_handles)) =
15551 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15552 {
15553 let member_inline_size =
15554 <f64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15555 if inlined != (member_inline_size <= 4) {
15556 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15557 }
15558 let inner_offset;
15559 let mut inner_depth = depth.clone();
15560 if inlined {
15561 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15562 inner_offset = next_offset;
15563 } else {
15564 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15565 inner_depth.increment()?;
15566 }
15567 let val_ref = self.float64_member.get_or_insert_with(|| {
15568 fidl::new_empty!(f64, fidl::encoding::DefaultFuchsiaResourceDialect)
15569 });
15570 fidl::decode!(
15571 f64,
15572 fidl::encoding::DefaultFuchsiaResourceDialect,
15573 val_ref,
15574 decoder,
15575 inner_offset,
15576 inner_depth
15577 )?;
15578 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15579 {
15580 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15581 }
15582 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15583 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15584 }
15585 }
15586
15587 next_offset += envelope_size;
15588 _next_ordinal_to_read += 1;
15589 if next_offset >= end_offset {
15590 return Ok(());
15591 }
15592
15593 while _next_ordinal_to_read < 12 {
15595 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15596 _next_ordinal_to_read += 1;
15597 next_offset += envelope_size;
15598 }
15599
15600 let next_out_of_line = decoder.next_out_of_line();
15601 let handles_before = decoder.remaining_handles();
15602 if let Some((inlined, num_bytes, num_handles)) =
15603 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15604 {
15605 let member_inline_size =
15606 <DefaultEnum as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15607 if inlined != (member_inline_size <= 4) {
15608 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15609 }
15610 let inner_offset;
15611 let mut inner_depth = depth.clone();
15612 if inlined {
15613 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15614 inner_offset = next_offset;
15615 } else {
15616 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15617 inner_depth.increment()?;
15618 }
15619 let val_ref = self.enum_member.get_or_insert_with(|| {
15620 fidl::new_empty!(DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect)
15621 });
15622 fidl::decode!(
15623 DefaultEnum,
15624 fidl::encoding::DefaultFuchsiaResourceDialect,
15625 val_ref,
15626 decoder,
15627 inner_offset,
15628 inner_depth
15629 )?;
15630 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15631 {
15632 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15633 }
15634 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15635 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15636 }
15637 }
15638
15639 next_offset += envelope_size;
15640 _next_ordinal_to_read += 1;
15641 if next_offset >= end_offset {
15642 return Ok(());
15643 }
15644
15645 while _next_ordinal_to_read < 13 {
15647 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15648 _next_ordinal_to_read += 1;
15649 next_offset += envelope_size;
15650 }
15651
15652 let next_out_of_line = decoder.next_out_of_line();
15653 let handles_before = decoder.remaining_handles();
15654 if let Some((inlined, num_bytes, num_handles)) =
15655 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15656 {
15657 let member_inline_size =
15658 <DefaultBits as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15659 if inlined != (member_inline_size <= 4) {
15660 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15661 }
15662 let inner_offset;
15663 let mut inner_depth = depth.clone();
15664 if inlined {
15665 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15666 inner_offset = next_offset;
15667 } else {
15668 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15669 inner_depth.increment()?;
15670 }
15671 let val_ref = self.bits_member.get_or_insert_with(|| {
15672 fidl::new_empty!(DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect)
15673 });
15674 fidl::decode!(
15675 DefaultBits,
15676 fidl::encoding::DefaultFuchsiaResourceDialect,
15677 val_ref,
15678 decoder,
15679 inner_offset,
15680 inner_depth
15681 )?;
15682 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15683 {
15684 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15685 }
15686 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15687 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15688 }
15689 }
15690
15691 next_offset += envelope_size;
15692 _next_ordinal_to_read += 1;
15693 if next_offset >= end_offset {
15694 return Ok(());
15695 }
15696
15697 while _next_ordinal_to_read < 14 {
15699 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15700 _next_ordinal_to_read += 1;
15701 next_offset += envelope_size;
15702 }
15703
15704 let next_out_of_line = decoder.next_out_of_line();
15705 let handles_before = decoder.remaining_handles();
15706 if let Some((inlined, num_bytes, num_handles)) =
15707 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15708 {
15709 let member_inline_size = <fidl::encoding::HandleType<
15710 fidl::NullableHandle,
15711 { fidl::ObjectType::NONE.into_raw() },
15712 2147483648,
15713 > as fidl::encoding::TypeMarker>::inline_size(
15714 decoder.context
15715 );
15716 if inlined != (member_inline_size <= 4) {
15717 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15718 }
15719 let inner_offset;
15720 let mut inner_depth = depth.clone();
15721 if inlined {
15722 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15723 inner_offset = next_offset;
15724 } else {
15725 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15726 inner_depth.increment()?;
15727 }
15728 let val_ref =
15729 self.handle_member.get_or_insert_with(|| fidl::new_empty!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect));
15730 fidl::decode!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, val_ref, decoder, inner_offset, inner_depth)?;
15731 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15732 {
15733 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15734 }
15735 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15736 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15737 }
15738 }
15739
15740 next_offset += envelope_size;
15741 _next_ordinal_to_read += 1;
15742 if next_offset >= end_offset {
15743 return Ok(());
15744 }
15745
15746 while _next_ordinal_to_read < 15 {
15748 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15749 _next_ordinal_to_read += 1;
15750 next_offset += envelope_size;
15751 }
15752
15753 let next_out_of_line = decoder.next_out_of_line();
15754 let handles_before = decoder.remaining_handles();
15755 if let Some((inlined, num_bytes, num_handles)) =
15756 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15757 {
15758 let member_inline_size =
15759 <fidl::encoding::UnboundedString as fidl::encoding::TypeMarker>::inline_size(
15760 decoder.context,
15761 );
15762 if inlined != (member_inline_size <= 4) {
15763 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15764 }
15765 let inner_offset;
15766 let mut inner_depth = depth.clone();
15767 if inlined {
15768 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15769 inner_offset = next_offset;
15770 } else {
15771 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15772 inner_depth.increment()?;
15773 }
15774 let val_ref = self.string_member.get_or_insert_with(|| {
15775 fidl::new_empty!(
15776 fidl::encoding::UnboundedString,
15777 fidl::encoding::DefaultFuchsiaResourceDialect
15778 )
15779 });
15780 fidl::decode!(
15781 fidl::encoding::UnboundedString,
15782 fidl::encoding::DefaultFuchsiaResourceDialect,
15783 val_ref,
15784 decoder,
15785 inner_offset,
15786 inner_depth
15787 )?;
15788 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15789 {
15790 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15791 }
15792 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15793 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15794 }
15795 }
15796
15797 next_offset += envelope_size;
15798 _next_ordinal_to_read += 1;
15799 if next_offset >= end_offset {
15800 return Ok(());
15801 }
15802
15803 while _next_ordinal_to_read < 16 {
15805 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15806 _next_ordinal_to_read += 1;
15807 next_offset += envelope_size;
15808 }
15809
15810 let next_out_of_line = decoder.next_out_of_line();
15811 let handles_before = decoder.remaining_handles();
15812 if let Some((inlined, num_bytes, num_handles)) =
15813 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15814 {
15815 let member_inline_size =
15816 <ThisIsAStruct as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15817 if inlined != (member_inline_size <= 4) {
15818 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15819 }
15820 let inner_offset;
15821 let mut inner_depth = depth.clone();
15822 if inlined {
15823 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15824 inner_offset = next_offset;
15825 } else {
15826 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15827 inner_depth.increment()?;
15828 }
15829 let val_ref = self.struct_member.get_or_insert_with(|| {
15830 fidl::new_empty!(ThisIsAStruct, fidl::encoding::DefaultFuchsiaResourceDialect)
15831 });
15832 fidl::decode!(
15833 ThisIsAStruct,
15834 fidl::encoding::DefaultFuchsiaResourceDialect,
15835 val_ref,
15836 decoder,
15837 inner_offset,
15838 inner_depth
15839 )?;
15840 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15841 {
15842 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15843 }
15844 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15845 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15846 }
15847 }
15848
15849 next_offset += envelope_size;
15850 _next_ordinal_to_read += 1;
15851 if next_offset >= end_offset {
15852 return Ok(());
15853 }
15854
15855 while _next_ordinal_to_read < 17 {
15857 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15858 _next_ordinal_to_read += 1;
15859 next_offset += envelope_size;
15860 }
15861
15862 let next_out_of_line = decoder.next_out_of_line();
15863 let handles_before = decoder.remaining_handles();
15864 if let Some((inlined, num_bytes, num_handles)) =
15865 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15866 {
15867 let member_inline_size =
15868 <ThisIsAUnion as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15869 if inlined != (member_inline_size <= 4) {
15870 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15871 }
15872 let inner_offset;
15873 let mut inner_depth = depth.clone();
15874 if inlined {
15875 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15876 inner_offset = next_offset;
15877 } else {
15878 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15879 inner_depth.increment()?;
15880 }
15881 let val_ref = self.union_member.get_or_insert_with(|| {
15882 fidl::new_empty!(ThisIsAUnion, fidl::encoding::DefaultFuchsiaResourceDialect)
15883 });
15884 fidl::decode!(
15885 ThisIsAUnion,
15886 fidl::encoding::DefaultFuchsiaResourceDialect,
15887 val_ref,
15888 decoder,
15889 inner_offset,
15890 inner_depth
15891 )?;
15892 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15893 {
15894 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15895 }
15896 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15897 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15898 }
15899 }
15900
15901 next_offset += envelope_size;
15902 _next_ordinal_to_read += 1;
15903 if next_offset >= end_offset {
15904 return Ok(());
15905 }
15906
15907 while _next_ordinal_to_read < 18 {
15909 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15910 _next_ordinal_to_read += 1;
15911 next_offset += envelope_size;
15912 }
15913
15914 let next_out_of_line = decoder.next_out_of_line();
15915 let handles_before = decoder.remaining_handles();
15916 if let Some((inlined, num_bytes, num_handles)) =
15917 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15918 {
15919 let member_inline_size =
15920 <fidl::encoding::Array<u32, 3> as fidl::encoding::TypeMarker>::inline_size(
15921 decoder.context,
15922 );
15923 if inlined != (member_inline_size <= 4) {
15924 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15925 }
15926 let inner_offset;
15927 let mut inner_depth = depth.clone();
15928 if inlined {
15929 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15930 inner_offset = next_offset;
15931 } else {
15932 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15933 inner_depth.increment()?;
15934 }
15935 let val_ref =
15936 self.array_member.get_or_insert_with(|| fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect));
15937 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, val_ref, decoder, inner_offset, inner_depth)?;
15938 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15939 {
15940 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15941 }
15942 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15943 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15944 }
15945 }
15946
15947 next_offset += envelope_size;
15948 _next_ordinal_to_read += 1;
15949 if next_offset >= end_offset {
15950 return Ok(());
15951 }
15952
15953 while _next_ordinal_to_read < 19 {
15955 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15956 _next_ordinal_to_read += 1;
15957 next_offset += envelope_size;
15958 }
15959
15960 let next_out_of_line = decoder.next_out_of_line();
15961 let handles_before = decoder.remaining_handles();
15962 if let Some((inlined, num_bytes, num_handles)) =
15963 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15964 {
15965 let member_inline_size = <fidl::encoding::UnboundedVector<u32> as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15966 if inlined != (member_inline_size <= 4) {
15967 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15968 }
15969 let inner_offset;
15970 let mut inner_depth = depth.clone();
15971 if inlined {
15972 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15973 inner_offset = next_offset;
15974 } else {
15975 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15976 inner_depth.increment()?;
15977 }
15978 let val_ref = self.vector_member.get_or_insert_with(|| {
15979 fidl::new_empty!(
15980 fidl::encoding::UnboundedVector<u32>,
15981 fidl::encoding::DefaultFuchsiaResourceDialect
15982 )
15983 });
15984 fidl::decode!(
15985 fidl::encoding::UnboundedVector<u32>,
15986 fidl::encoding::DefaultFuchsiaResourceDialect,
15987 val_ref,
15988 decoder,
15989 inner_offset,
15990 inner_depth
15991 )?;
15992 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15993 {
15994 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15995 }
15996 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15997 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15998 }
15999 }
16000
16001 next_offset += envelope_size;
16002 _next_ordinal_to_read += 1;
16003 if next_offset >= end_offset {
16004 return Ok(());
16005 }
16006
16007 while _next_ordinal_to_read < 20 {
16009 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16010 _next_ordinal_to_read += 1;
16011 next_offset += envelope_size;
16012 }
16013
16014 let next_out_of_line = decoder.next_out_of_line();
16015 let handles_before = decoder.remaining_handles();
16016 if let Some((inlined, num_bytes, num_handles)) =
16017 fidl::encoding::decode_envelope_header(decoder, next_offset)?
16018 {
16019 let member_inline_size =
16020 <ThisIsATable as fidl::encoding::TypeMarker>::inline_size(decoder.context);
16021 if inlined != (member_inline_size <= 4) {
16022 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16023 }
16024 let inner_offset;
16025 let mut inner_depth = depth.clone();
16026 if inlined {
16027 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
16028 inner_offset = next_offset;
16029 } else {
16030 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16031 inner_depth.increment()?;
16032 }
16033 let val_ref = self.table_member.get_or_insert_with(|| {
16034 fidl::new_empty!(ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect)
16035 });
16036 fidl::decode!(
16037 ThisIsATable,
16038 fidl::encoding::DefaultFuchsiaResourceDialect,
16039 val_ref,
16040 decoder,
16041 inner_offset,
16042 inner_depth
16043 )?;
16044 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
16045 {
16046 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16047 }
16048 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16049 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16050 }
16051 }
16052
16053 next_offset += envelope_size;
16054 _next_ordinal_to_read += 1;
16055 if next_offset >= end_offset {
16056 return Ok(());
16057 }
16058
16059 while _next_ordinal_to_read < 21 {
16061 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16062 _next_ordinal_to_read += 1;
16063 next_offset += envelope_size;
16064 }
16065
16066 let next_out_of_line = decoder.next_out_of_line();
16067 let handles_before = decoder.remaining_handles();
16068 if let Some((inlined, num_bytes, num_handles)) =
16069 fidl::encoding::decode_envelope_header(decoder, next_offset)?
16070 {
16071 let member_inline_size =
16072 <ThisIsAXunion as fidl::encoding::TypeMarker>::inline_size(decoder.context);
16073 if inlined != (member_inline_size <= 4) {
16074 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16075 }
16076 let inner_offset;
16077 let mut inner_depth = depth.clone();
16078 if inlined {
16079 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
16080 inner_offset = next_offset;
16081 } else {
16082 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16083 inner_depth.increment()?;
16084 }
16085 let val_ref = self.xunion_member.get_or_insert_with(|| {
16086 fidl::new_empty!(ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect)
16087 });
16088 fidl::decode!(
16089 ThisIsAXunion,
16090 fidl::encoding::DefaultFuchsiaResourceDialect,
16091 val_ref,
16092 decoder,
16093 inner_offset,
16094 inner_depth
16095 )?;
16096 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
16097 {
16098 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16099 }
16100 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16101 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16102 }
16103 }
16104
16105 next_offset += envelope_size;
16106
16107 while next_offset < end_offset {
16109 _next_ordinal_to_read += 1;
16110 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16111 next_offset += envelope_size;
16112 }
16113
16114 Ok(())
16115 }
16116 }
16117
16118 impl fidl::encoding::ResourceTypeMarker for AllTypesXunion {
16119 type Borrowed<'a> = &'a mut Self;
16120 fn take_or_borrow<'a>(
16121 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
16122 ) -> Self::Borrowed<'a> {
16123 value
16124 }
16125 }
16126
16127 unsafe impl fidl::encoding::TypeMarker for AllTypesXunion {
16128 type Owned = Self;
16129
16130 #[inline(always)]
16131 fn inline_align(_context: fidl::encoding::Context) -> usize {
16132 8
16133 }
16134
16135 #[inline(always)]
16136 fn inline_size(_context: fidl::encoding::Context) -> usize {
16137 16
16138 }
16139 }
16140
16141 unsafe impl
16142 fidl::encoding::Encode<AllTypesXunion, fidl::encoding::DefaultFuchsiaResourceDialect>
16143 for &mut AllTypesXunion
16144 {
16145 #[inline]
16146 unsafe fn encode(
16147 self,
16148 encoder: &mut fidl::encoding::Encoder<
16149 '_,
16150 fidl::encoding::DefaultFuchsiaResourceDialect,
16151 >,
16152 offset: usize,
16153 _depth: fidl::encoding::Depth,
16154 ) -> fidl::Result<()> {
16155 encoder.debug_check_bounds::<AllTypesXunion>(offset);
16156 encoder.write_num::<u64>(self.ordinal(), offset);
16157 match self {
16158 AllTypesXunion::BoolMember(ref val) => {
16159 fidl::encoding::encode_in_envelope::<bool, fidl::encoding::DefaultFuchsiaResourceDialect>(
16160 <bool as fidl::encoding::ValueTypeMarker>::borrow(val),
16161 encoder, offset + 8, _depth
16162 )
16163 }
16164 AllTypesXunion::Int8Member(ref val) => {
16165 fidl::encoding::encode_in_envelope::<i8, fidl::encoding::DefaultFuchsiaResourceDialect>(
16166 <i8 as fidl::encoding::ValueTypeMarker>::borrow(val),
16167 encoder, offset + 8, _depth
16168 )
16169 }
16170 AllTypesXunion::Int16Member(ref val) => {
16171 fidl::encoding::encode_in_envelope::<i16, fidl::encoding::DefaultFuchsiaResourceDialect>(
16172 <i16 as fidl::encoding::ValueTypeMarker>::borrow(val),
16173 encoder, offset + 8, _depth
16174 )
16175 }
16176 AllTypesXunion::Int32Member(ref val) => {
16177 fidl::encoding::encode_in_envelope::<i32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16178 <i32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16179 encoder, offset + 8, _depth
16180 )
16181 }
16182 AllTypesXunion::Int64Member(ref val) => {
16183 fidl::encoding::encode_in_envelope::<i64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16184 <i64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16185 encoder, offset + 8, _depth
16186 )
16187 }
16188 AllTypesXunion::Uint8Member(ref val) => {
16189 fidl::encoding::encode_in_envelope::<u8, fidl::encoding::DefaultFuchsiaResourceDialect>(
16190 <u8 as fidl::encoding::ValueTypeMarker>::borrow(val),
16191 encoder, offset + 8, _depth
16192 )
16193 }
16194 AllTypesXunion::Uint16Member(ref val) => {
16195 fidl::encoding::encode_in_envelope::<u16, fidl::encoding::DefaultFuchsiaResourceDialect>(
16196 <u16 as fidl::encoding::ValueTypeMarker>::borrow(val),
16197 encoder, offset + 8, _depth
16198 )
16199 }
16200 AllTypesXunion::Uint32Member(ref val) => {
16201 fidl::encoding::encode_in_envelope::<u32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16202 <u32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16203 encoder, offset + 8, _depth
16204 )
16205 }
16206 AllTypesXunion::Uint64Member(ref val) => {
16207 fidl::encoding::encode_in_envelope::<u64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16208 <u64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16209 encoder, offset + 8, _depth
16210 )
16211 }
16212 AllTypesXunion::Float32Member(ref val) => {
16213 fidl::encoding::encode_in_envelope::<f32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16214 <f32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16215 encoder, offset + 8, _depth
16216 )
16217 }
16218 AllTypesXunion::Float64Member(ref val) => {
16219 fidl::encoding::encode_in_envelope::<f64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16220 <f64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16221 encoder, offset + 8, _depth
16222 )
16223 }
16224 AllTypesXunion::EnumMember(ref val) => {
16225 fidl::encoding::encode_in_envelope::<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>(
16226 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(val),
16227 encoder, offset + 8, _depth
16228 )
16229 }
16230 AllTypesXunion::BitsMember(ref val) => {
16231 fidl::encoding::encode_in_envelope::<DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect>(
16232 <DefaultBits as fidl::encoding::ValueTypeMarker>::borrow(val),
16233 encoder, offset + 8, _depth
16234 )
16235 }
16236 AllTypesXunion::HandleMember(ref mut val) => {
16237 fidl::encoding::encode_in_envelope::<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16238 <fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(val),
16239 encoder, offset + 8, _depth
16240 )
16241 }
16242 AllTypesXunion::StringMember(ref val) => {
16243 fidl::encoding::encode_in_envelope::<fidl::encoding::UnboundedString, fidl::encoding::DefaultFuchsiaResourceDialect>(
16244 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(val),
16245 encoder, offset + 8, _depth
16246 )
16247 }
16248 AllTypesXunion::StructMember(ref val) => {
16249 fidl::encoding::encode_in_envelope::<ThisIsAStruct, fidl::encoding::DefaultFuchsiaResourceDialect>(
16250 <ThisIsAStruct as fidl::encoding::ValueTypeMarker>::borrow(val),
16251 encoder, offset + 8, _depth
16252 )
16253 }
16254 AllTypesXunion::UnionMember(ref val) => {
16255 fidl::encoding::encode_in_envelope::<ThisIsAUnion, fidl::encoding::DefaultFuchsiaResourceDialect>(
16256 <ThisIsAUnion as fidl::encoding::ValueTypeMarker>::borrow(val),
16257 encoder, offset + 8, _depth
16258 )
16259 }
16260 AllTypesXunion::ArrayMember(ref val) => {
16261 fidl::encoding::encode_in_envelope::<fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16262 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(val),
16263 encoder, offset + 8, _depth
16264 )
16265 }
16266 AllTypesXunion::VectorMember(ref val) => {
16267 fidl::encoding::encode_in_envelope::<fidl::encoding::UnboundedVector<u32>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16268 <fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow(val),
16269 encoder, offset + 8, _depth
16270 )
16271 }
16272 AllTypesXunion::TableMember(ref val) => {
16273 fidl::encoding::encode_in_envelope::<ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect>(
16274 <ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow(val),
16275 encoder, offset + 8, _depth
16276 )
16277 }
16278 AllTypesXunion::XunionMember(ref val) => {
16279 fidl::encoding::encode_in_envelope::<ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect>(
16280 <ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow(val),
16281 encoder, offset + 8, _depth
16282 )
16283 }
16284 AllTypesXunion::__SourceBreaking { .. } => Err(fidl::Error::UnknownUnionTag),
16285 }
16286 }
16287 }
16288
16289 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
16290 for AllTypesXunion
16291 {
16292 #[inline(always)]
16293 fn new_empty() -> Self {
16294 Self::__SourceBreaking { unknown_ordinal: 0 }
16295 }
16296
16297 #[inline]
16298 unsafe fn decode(
16299 &mut self,
16300 decoder: &mut fidl::encoding::Decoder<
16301 '_,
16302 fidl::encoding::DefaultFuchsiaResourceDialect,
16303 >,
16304 offset: usize,
16305 mut depth: fidl::encoding::Depth,
16306 ) -> fidl::Result<()> {
16307 decoder.debug_check_bounds::<Self>(offset);
16308 #[allow(unused_variables)]
16309 let next_out_of_line = decoder.next_out_of_line();
16310 let handles_before = decoder.remaining_handles();
16311 let (ordinal, inlined, num_bytes, num_handles) =
16312 fidl::encoding::decode_union_inline_portion(decoder, offset)?;
16313
16314 let member_inline_size = match ordinal {
16315 1 => <bool as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16316 2 => <i8 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16317 3 => <i16 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16318 4 => <i32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16319 5 => <i64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16320 6 => <u8 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16321 7 => <u16 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16322 8 => <u32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16323 9 => <u64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16324 10 => <f32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16325 11 => <f64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16326 12 => <DefaultEnum as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16327 13 => <DefaultBits as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16328 14 => <fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16329 15 => <fidl::encoding::UnboundedString as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16330 16 => <ThisIsAStruct as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16331 17 => <ThisIsAUnion as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16332 18 => <fidl::encoding::Array<u32, 3> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16333 19 => <fidl::encoding::UnboundedVector<u32> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16334 20 => <ThisIsATable as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16335 21 => <ThisIsAXunion as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16336 0 => return Err(fidl::Error::UnknownUnionTag),
16337 _ => num_bytes as usize,
16338 };
16339
16340 if inlined != (member_inline_size <= 4) {
16341 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16342 }
16343 let _inner_offset;
16344 if inlined {
16345 decoder.check_inline_envelope_padding(offset + 8, member_inline_size)?;
16346 _inner_offset = offset + 8;
16347 } else {
16348 depth.increment()?;
16349 _inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16350 }
16351 match ordinal {
16352 1 => {
16353 #[allow(irrefutable_let_patterns)]
16354 if let AllTypesXunion::BoolMember(_) = self {
16355 } else {
16357 *self = AllTypesXunion::BoolMember(fidl::new_empty!(
16359 bool,
16360 fidl::encoding::DefaultFuchsiaResourceDialect
16361 ));
16362 }
16363 #[allow(irrefutable_let_patterns)]
16364 if let AllTypesXunion::BoolMember(ref mut val) = self {
16365 fidl::decode!(
16366 bool,
16367 fidl::encoding::DefaultFuchsiaResourceDialect,
16368 val,
16369 decoder,
16370 _inner_offset,
16371 depth
16372 )?;
16373 } else {
16374 unreachable!()
16375 }
16376 }
16377 2 => {
16378 #[allow(irrefutable_let_patterns)]
16379 if let AllTypesXunion::Int8Member(_) = self {
16380 } else {
16382 *self = AllTypesXunion::Int8Member(fidl::new_empty!(
16384 i8,
16385 fidl::encoding::DefaultFuchsiaResourceDialect
16386 ));
16387 }
16388 #[allow(irrefutable_let_patterns)]
16389 if let AllTypesXunion::Int8Member(ref mut val) = self {
16390 fidl::decode!(
16391 i8,
16392 fidl::encoding::DefaultFuchsiaResourceDialect,
16393 val,
16394 decoder,
16395 _inner_offset,
16396 depth
16397 )?;
16398 } else {
16399 unreachable!()
16400 }
16401 }
16402 3 => {
16403 #[allow(irrefutable_let_patterns)]
16404 if let AllTypesXunion::Int16Member(_) = self {
16405 } else {
16407 *self = AllTypesXunion::Int16Member(fidl::new_empty!(
16409 i16,
16410 fidl::encoding::DefaultFuchsiaResourceDialect
16411 ));
16412 }
16413 #[allow(irrefutable_let_patterns)]
16414 if let AllTypesXunion::Int16Member(ref mut val) = self {
16415 fidl::decode!(
16416 i16,
16417 fidl::encoding::DefaultFuchsiaResourceDialect,
16418 val,
16419 decoder,
16420 _inner_offset,
16421 depth
16422 )?;
16423 } else {
16424 unreachable!()
16425 }
16426 }
16427 4 => {
16428 #[allow(irrefutable_let_patterns)]
16429 if let AllTypesXunion::Int32Member(_) = self {
16430 } else {
16432 *self = AllTypesXunion::Int32Member(fidl::new_empty!(
16434 i32,
16435 fidl::encoding::DefaultFuchsiaResourceDialect
16436 ));
16437 }
16438 #[allow(irrefutable_let_patterns)]
16439 if let AllTypesXunion::Int32Member(ref mut val) = self {
16440 fidl::decode!(
16441 i32,
16442 fidl::encoding::DefaultFuchsiaResourceDialect,
16443 val,
16444 decoder,
16445 _inner_offset,
16446 depth
16447 )?;
16448 } else {
16449 unreachable!()
16450 }
16451 }
16452 5 => {
16453 #[allow(irrefutable_let_patterns)]
16454 if let AllTypesXunion::Int64Member(_) = self {
16455 } else {
16457 *self = AllTypesXunion::Int64Member(fidl::new_empty!(
16459 i64,
16460 fidl::encoding::DefaultFuchsiaResourceDialect
16461 ));
16462 }
16463 #[allow(irrefutable_let_patterns)]
16464 if let AllTypesXunion::Int64Member(ref mut val) = self {
16465 fidl::decode!(
16466 i64,
16467 fidl::encoding::DefaultFuchsiaResourceDialect,
16468 val,
16469 decoder,
16470 _inner_offset,
16471 depth
16472 )?;
16473 } else {
16474 unreachable!()
16475 }
16476 }
16477 6 => {
16478 #[allow(irrefutable_let_patterns)]
16479 if let AllTypesXunion::Uint8Member(_) = self {
16480 } else {
16482 *self = AllTypesXunion::Uint8Member(fidl::new_empty!(
16484 u8,
16485 fidl::encoding::DefaultFuchsiaResourceDialect
16486 ));
16487 }
16488 #[allow(irrefutable_let_patterns)]
16489 if let AllTypesXunion::Uint8Member(ref mut val) = self {
16490 fidl::decode!(
16491 u8,
16492 fidl::encoding::DefaultFuchsiaResourceDialect,
16493 val,
16494 decoder,
16495 _inner_offset,
16496 depth
16497 )?;
16498 } else {
16499 unreachable!()
16500 }
16501 }
16502 7 => {
16503 #[allow(irrefutable_let_patterns)]
16504 if let AllTypesXunion::Uint16Member(_) = self {
16505 } else {
16507 *self = AllTypesXunion::Uint16Member(fidl::new_empty!(
16509 u16,
16510 fidl::encoding::DefaultFuchsiaResourceDialect
16511 ));
16512 }
16513 #[allow(irrefutable_let_patterns)]
16514 if let AllTypesXunion::Uint16Member(ref mut val) = self {
16515 fidl::decode!(
16516 u16,
16517 fidl::encoding::DefaultFuchsiaResourceDialect,
16518 val,
16519 decoder,
16520 _inner_offset,
16521 depth
16522 )?;
16523 } else {
16524 unreachable!()
16525 }
16526 }
16527 8 => {
16528 #[allow(irrefutable_let_patterns)]
16529 if let AllTypesXunion::Uint32Member(_) = self {
16530 } else {
16532 *self = AllTypesXunion::Uint32Member(fidl::new_empty!(
16534 u32,
16535 fidl::encoding::DefaultFuchsiaResourceDialect
16536 ));
16537 }
16538 #[allow(irrefutable_let_patterns)]
16539 if let AllTypesXunion::Uint32Member(ref mut val) = self {
16540 fidl::decode!(
16541 u32,
16542 fidl::encoding::DefaultFuchsiaResourceDialect,
16543 val,
16544 decoder,
16545 _inner_offset,
16546 depth
16547 )?;
16548 } else {
16549 unreachable!()
16550 }
16551 }
16552 9 => {
16553 #[allow(irrefutable_let_patterns)]
16554 if let AllTypesXunion::Uint64Member(_) = self {
16555 } else {
16557 *self = AllTypesXunion::Uint64Member(fidl::new_empty!(
16559 u64,
16560 fidl::encoding::DefaultFuchsiaResourceDialect
16561 ));
16562 }
16563 #[allow(irrefutable_let_patterns)]
16564 if let AllTypesXunion::Uint64Member(ref mut val) = self {
16565 fidl::decode!(
16566 u64,
16567 fidl::encoding::DefaultFuchsiaResourceDialect,
16568 val,
16569 decoder,
16570 _inner_offset,
16571 depth
16572 )?;
16573 } else {
16574 unreachable!()
16575 }
16576 }
16577 10 => {
16578 #[allow(irrefutable_let_patterns)]
16579 if let AllTypesXunion::Float32Member(_) = self {
16580 } else {
16582 *self = AllTypesXunion::Float32Member(fidl::new_empty!(
16584 f32,
16585 fidl::encoding::DefaultFuchsiaResourceDialect
16586 ));
16587 }
16588 #[allow(irrefutable_let_patterns)]
16589 if let AllTypesXunion::Float32Member(ref mut val) = self {
16590 fidl::decode!(
16591 f32,
16592 fidl::encoding::DefaultFuchsiaResourceDialect,
16593 val,
16594 decoder,
16595 _inner_offset,
16596 depth
16597 )?;
16598 } else {
16599 unreachable!()
16600 }
16601 }
16602 11 => {
16603 #[allow(irrefutable_let_patterns)]
16604 if let AllTypesXunion::Float64Member(_) = self {
16605 } else {
16607 *self = AllTypesXunion::Float64Member(fidl::new_empty!(
16609 f64,
16610 fidl::encoding::DefaultFuchsiaResourceDialect
16611 ));
16612 }
16613 #[allow(irrefutable_let_patterns)]
16614 if let AllTypesXunion::Float64Member(ref mut val) = self {
16615 fidl::decode!(
16616 f64,
16617 fidl::encoding::DefaultFuchsiaResourceDialect,
16618 val,
16619 decoder,
16620 _inner_offset,
16621 depth
16622 )?;
16623 } else {
16624 unreachable!()
16625 }
16626 }
16627 12 => {
16628 #[allow(irrefutable_let_patterns)]
16629 if let AllTypesXunion::EnumMember(_) = self {
16630 } else {
16632 *self = AllTypesXunion::EnumMember(fidl::new_empty!(
16634 DefaultEnum,
16635 fidl::encoding::DefaultFuchsiaResourceDialect
16636 ));
16637 }
16638 #[allow(irrefutable_let_patterns)]
16639 if let AllTypesXunion::EnumMember(ref mut val) = self {
16640 fidl::decode!(
16641 DefaultEnum,
16642 fidl::encoding::DefaultFuchsiaResourceDialect,
16643 val,
16644 decoder,
16645 _inner_offset,
16646 depth
16647 )?;
16648 } else {
16649 unreachable!()
16650 }
16651 }
16652 13 => {
16653 #[allow(irrefutable_let_patterns)]
16654 if let AllTypesXunion::BitsMember(_) = self {
16655 } else {
16657 *self = AllTypesXunion::BitsMember(fidl::new_empty!(
16659 DefaultBits,
16660 fidl::encoding::DefaultFuchsiaResourceDialect
16661 ));
16662 }
16663 #[allow(irrefutable_let_patterns)]
16664 if let AllTypesXunion::BitsMember(ref mut val) = self {
16665 fidl::decode!(
16666 DefaultBits,
16667 fidl::encoding::DefaultFuchsiaResourceDialect,
16668 val,
16669 decoder,
16670 _inner_offset,
16671 depth
16672 )?;
16673 } else {
16674 unreachable!()
16675 }
16676 }
16677 14 => {
16678 #[allow(irrefutable_let_patterns)]
16679 if let AllTypesXunion::HandleMember(_) = self {
16680 } else {
16682 *self = AllTypesXunion::HandleMember(
16684 fidl::new_empty!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
16685 );
16686 }
16687 #[allow(irrefutable_let_patterns)]
16688 if let AllTypesXunion::HandleMember(ref mut val) = self {
16689 fidl::decode!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, val, decoder, _inner_offset, depth)?;
16690 } else {
16691 unreachable!()
16692 }
16693 }
16694 15 => {
16695 #[allow(irrefutable_let_patterns)]
16696 if let AllTypesXunion::StringMember(_) = self {
16697 } else {
16699 *self = AllTypesXunion::StringMember(fidl::new_empty!(
16701 fidl::encoding::UnboundedString,
16702 fidl::encoding::DefaultFuchsiaResourceDialect
16703 ));
16704 }
16705 #[allow(irrefutable_let_patterns)]
16706 if let AllTypesXunion::StringMember(ref mut val) = self {
16707 fidl::decode!(
16708 fidl::encoding::UnboundedString,
16709 fidl::encoding::DefaultFuchsiaResourceDialect,
16710 val,
16711 decoder,
16712 _inner_offset,
16713 depth
16714 )?;
16715 } else {
16716 unreachable!()
16717 }
16718 }
16719 16 => {
16720 #[allow(irrefutable_let_patterns)]
16721 if let AllTypesXunion::StructMember(_) = self {
16722 } else {
16724 *self = AllTypesXunion::StructMember(fidl::new_empty!(
16726 ThisIsAStruct,
16727 fidl::encoding::DefaultFuchsiaResourceDialect
16728 ));
16729 }
16730 #[allow(irrefutable_let_patterns)]
16731 if let AllTypesXunion::StructMember(ref mut val) = self {
16732 fidl::decode!(
16733 ThisIsAStruct,
16734 fidl::encoding::DefaultFuchsiaResourceDialect,
16735 val,
16736 decoder,
16737 _inner_offset,
16738 depth
16739 )?;
16740 } else {
16741 unreachable!()
16742 }
16743 }
16744 17 => {
16745 #[allow(irrefutable_let_patterns)]
16746 if let AllTypesXunion::UnionMember(_) = self {
16747 } else {
16749 *self = AllTypesXunion::UnionMember(fidl::new_empty!(
16751 ThisIsAUnion,
16752 fidl::encoding::DefaultFuchsiaResourceDialect
16753 ));
16754 }
16755 #[allow(irrefutable_let_patterns)]
16756 if let AllTypesXunion::UnionMember(ref mut val) = self {
16757 fidl::decode!(
16758 ThisIsAUnion,
16759 fidl::encoding::DefaultFuchsiaResourceDialect,
16760 val,
16761 decoder,
16762 _inner_offset,
16763 depth
16764 )?;
16765 } else {
16766 unreachable!()
16767 }
16768 }
16769 18 => {
16770 #[allow(irrefutable_let_patterns)]
16771 if let AllTypesXunion::ArrayMember(_) = self {
16772 } else {
16774 *self = AllTypesXunion::ArrayMember(
16776 fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
16777 );
16778 }
16779 #[allow(irrefutable_let_patterns)]
16780 if let AllTypesXunion::ArrayMember(ref mut val) = self {
16781 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, val, decoder, _inner_offset, depth)?;
16782 } else {
16783 unreachable!()
16784 }
16785 }
16786 19 => {
16787 #[allow(irrefutable_let_patterns)]
16788 if let AllTypesXunion::VectorMember(_) = self {
16789 } else {
16791 *self = AllTypesXunion::VectorMember(fidl::new_empty!(
16793 fidl::encoding::UnboundedVector<u32>,
16794 fidl::encoding::DefaultFuchsiaResourceDialect
16795 ));
16796 }
16797 #[allow(irrefutable_let_patterns)]
16798 if let AllTypesXunion::VectorMember(ref mut val) = self {
16799 fidl::decode!(
16800 fidl::encoding::UnboundedVector<u32>,
16801 fidl::encoding::DefaultFuchsiaResourceDialect,
16802 val,
16803 decoder,
16804 _inner_offset,
16805 depth
16806 )?;
16807 } else {
16808 unreachable!()
16809 }
16810 }
16811 20 => {
16812 #[allow(irrefutable_let_patterns)]
16813 if let AllTypesXunion::TableMember(_) = self {
16814 } else {
16816 *self = AllTypesXunion::TableMember(fidl::new_empty!(
16818 ThisIsATable,
16819 fidl::encoding::DefaultFuchsiaResourceDialect
16820 ));
16821 }
16822 #[allow(irrefutable_let_patterns)]
16823 if let AllTypesXunion::TableMember(ref mut val) = self {
16824 fidl::decode!(
16825 ThisIsATable,
16826 fidl::encoding::DefaultFuchsiaResourceDialect,
16827 val,
16828 decoder,
16829 _inner_offset,
16830 depth
16831 )?;
16832 } else {
16833 unreachable!()
16834 }
16835 }
16836 21 => {
16837 #[allow(irrefutable_let_patterns)]
16838 if let AllTypesXunion::XunionMember(_) = self {
16839 } else {
16841 *self = AllTypesXunion::XunionMember(fidl::new_empty!(
16843 ThisIsAXunion,
16844 fidl::encoding::DefaultFuchsiaResourceDialect
16845 ));
16846 }
16847 #[allow(irrefutable_let_patterns)]
16848 if let AllTypesXunion::XunionMember(ref mut val) = self {
16849 fidl::decode!(
16850 ThisIsAXunion,
16851 fidl::encoding::DefaultFuchsiaResourceDialect,
16852 val,
16853 decoder,
16854 _inner_offset,
16855 depth
16856 )?;
16857 } else {
16858 unreachable!()
16859 }
16860 }
16861 #[allow(deprecated)]
16862 ordinal => {
16863 for _ in 0..num_handles {
16864 decoder.drop_next_handle()?;
16865 }
16866 *self = AllTypesXunion::__SourceBreaking { unknown_ordinal: ordinal };
16867 }
16868 }
16869 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize) {
16870 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16871 }
16872 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16873 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16874 }
16875 Ok(())
16876 }
16877 }
16878}