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 let protocol_name = <ConfigMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
711 Self { client: fidl::client::sync::Client::new(channel, protocol_name) }
712 }
713
714 pub fn into_channel(self) -> fidl::Channel {
715 self.client.into_channel()
716 }
717
718 pub fn wait_for_event(
721 &self,
722 deadline: zx::MonotonicInstant,
723 ) -> Result<ConfigEvent, fidl::Error> {
724 ConfigEvent::decode(self.client.wait_for_event(deadline)?)
725 }
726
727 pub fn r#get_impls(
728 &self,
729 ___deadline: zx::MonotonicInstant,
730 ) -> Result<Vec<String>, fidl::Error> {
731 let _response =
732 self.client.send_query::<fidl::encoding::EmptyPayload, ConfigGetImplsResponse>(
733 (),
734 0x3b360c86a6dbdfe0,
735 fidl::encoding::DynamicFlags::empty(),
736 ___deadline,
737 )?;
738 Ok(_response.impls)
739 }
740}
741
742#[cfg(target_os = "fuchsia")]
743impl From<ConfigSynchronousProxy> for zx::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 let protocol_name = <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1303 Self { client: fidl::client::sync::Client::new(channel, protocol_name) }
1304 }
1305
1306 pub fn into_channel(self) -> fidl::Channel {
1307 self.client.into_channel()
1308 }
1309
1310 pub fn wait_for_event(&self, deadline: zx::MonotonicInstant) -> Result<EchoEvent, fidl::Error> {
1313 EchoEvent::decode(self.client.wait_for_event(deadline)?)
1314 }
1315
1316 pub fn r#echo_table_request_composed(
1317 &self,
1318 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1319 ___deadline: zx::MonotonicInstant,
1320 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
1321 let _response = self.client.send_query::<
1322 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1323 fidl_fidl_test_imported::ResponseStruct,
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 >(
1349 (value, want_absolute_value, forward_to_server, result_err, result_variant,),
1350 0x38a67e88d6106443,
1351 fidl::encoding::DynamicFlags::empty(),
1352 ___deadline,
1353 )?;
1354 Ok(_response.map(|x| x))
1355 }
1356
1357 pub fn r#echo_minimal(
1358 &self,
1359 mut forward_to_server: &str,
1360 ___deadline: zx::MonotonicInstant,
1361 ) -> Result<(), fidl::Error> {
1362 let _response =
1363 self.client.send_query::<EchoEchoMinimalRequest, fidl::encoding::EmptyPayload>(
1364 (forward_to_server,),
1365 0x39edd68c837482ec,
1366 fidl::encoding::DynamicFlags::empty(),
1367 ___deadline,
1368 )?;
1369 Ok(_response)
1370 }
1371
1372 pub fn r#echo_minimal_with_error(
1373 &self,
1374 mut forward_to_server: &str,
1375 mut result_variant: RespondWith,
1376 ___deadline: zx::MonotonicInstant,
1377 ) -> Result<EchoEchoMinimalWithErrorResult, fidl::Error> {
1378 let _response = self.client.send_query::<
1379 EchoEchoMinimalWithErrorRequest,
1380 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>,
1381 >(
1382 (forward_to_server, result_variant,),
1383 0x36f4695996e35acc,
1384 fidl::encoding::DynamicFlags::empty(),
1385 ___deadline,
1386 )?;
1387 Ok(_response.map(|x| x))
1388 }
1389
1390 pub fn r#echo_minimal_no_ret_val(
1391 &self,
1392 mut forward_to_server: &str,
1393 ) -> Result<(), fidl::Error> {
1394 self.client.send::<EchoEchoMinimalNoRetValRequest>(
1395 (forward_to_server,),
1396 0x42693c143e2c3694,
1397 fidl::encoding::DynamicFlags::empty(),
1398 )
1399 }
1400
1401 pub fn r#echo_struct(
1402 &self,
1403 mut value: Struct,
1404 mut forward_to_server: &str,
1405 ___deadline: zx::MonotonicInstant,
1406 ) -> Result<Struct, fidl::Error> {
1407 let _response = self.client.send_query::<EchoEchoStructRequest, EchoEchoStructResponse>(
1408 (&mut value, forward_to_server),
1409 0x4c2f85818cc53f37,
1410 fidl::encoding::DynamicFlags::empty(),
1411 ___deadline,
1412 )?;
1413 Ok(_response.value)
1414 }
1415
1416 pub fn r#echo_struct_with_error(
1417 &self,
1418 mut value: Struct,
1419 mut result_err: DefaultEnum,
1420 mut forward_to_server: &str,
1421 mut result_variant: RespondWith,
1422 ___deadline: zx::MonotonicInstant,
1423 ) -> Result<EchoEchoStructWithErrorResult, fidl::Error> {
1424 let _response = self.client.send_query::<
1425 EchoEchoStructWithErrorRequest,
1426 fidl::encoding::ResultType<EchoEchoStructWithErrorResponse, DefaultEnum>,
1427 >(
1428 (&mut value, result_err, forward_to_server, result_variant,),
1429 0x46cb32652c4c0899,
1430 fidl::encoding::DynamicFlags::empty(),
1431 ___deadline,
1432 )?;
1433 Ok(_response.map(|x| x.value))
1434 }
1435
1436 pub fn r#echo_struct_no_ret_val(
1437 &self,
1438 mut value: Struct,
1439 mut forward_to_server: &str,
1440 ) -> Result<(), fidl::Error> {
1441 self.client.send::<EchoEchoStructNoRetValRequest>(
1442 (&mut value, forward_to_server),
1443 0x1f763e602cf5892a,
1444 fidl::encoding::DynamicFlags::empty(),
1445 )
1446 }
1447
1448 pub fn r#echo_arrays(
1449 &self,
1450 mut value: ArraysStruct,
1451 mut forward_to_server: &str,
1452 ___deadline: zx::MonotonicInstant,
1453 ) -> Result<ArraysStruct, fidl::Error> {
1454 let _response = self.client.send_query::<EchoEchoArraysRequest, EchoEchoArraysResponse>(
1455 (&mut value, forward_to_server),
1456 0x1b6019d5611f2470,
1457 fidl::encoding::DynamicFlags::empty(),
1458 ___deadline,
1459 )?;
1460 Ok(_response.value)
1461 }
1462
1463 pub fn r#echo_arrays_with_error(
1464 &self,
1465 mut value: ArraysStruct,
1466 mut result_err: DefaultEnum,
1467 mut forward_to_server: &str,
1468 mut result_variant: RespondWith,
1469 ___deadline: zx::MonotonicInstant,
1470 ) -> Result<EchoEchoArraysWithErrorResult, fidl::Error> {
1471 let _response = self.client.send_query::<
1472 EchoEchoArraysWithErrorRequest,
1473 fidl::encoding::ResultType<EchoEchoArraysWithErrorResponse, DefaultEnum>,
1474 >(
1475 (&mut value, result_err, forward_to_server, result_variant,),
1476 0x6dbf26e67e253afa,
1477 fidl::encoding::DynamicFlags::empty(),
1478 ___deadline,
1479 )?;
1480 Ok(_response.map(|x| x.value))
1481 }
1482
1483 pub fn r#echo_vectors(
1484 &self,
1485 mut value: VectorsStruct,
1486 mut forward_to_server: &str,
1487 ___deadline: zx::MonotonicInstant,
1488 ) -> Result<VectorsStruct, fidl::Error> {
1489 let _response = self.client.send_query::<EchoEchoVectorsRequest, EchoEchoVectorsResponse>(
1490 (&mut value, forward_to_server),
1491 0x1582623f0d9f6e5e,
1492 fidl::encoding::DynamicFlags::empty(),
1493 ___deadline,
1494 )?;
1495 Ok(_response.value)
1496 }
1497
1498 pub fn r#echo_vectors_with_error(
1499 &self,
1500 mut value: VectorsStruct,
1501 mut result_err: DefaultEnum,
1502 mut forward_to_server: &str,
1503 mut result_variant: RespondWith,
1504 ___deadline: zx::MonotonicInstant,
1505 ) -> Result<EchoEchoVectorsWithErrorResult, fidl::Error> {
1506 let _response = self.client.send_query::<
1507 EchoEchoVectorsWithErrorRequest,
1508 fidl::encoding::ResultType<EchoEchoVectorsWithErrorResponse, DefaultEnum>,
1509 >(
1510 (&mut value, result_err, forward_to_server, result_variant,),
1511 0x730f163401e2b3e5,
1512 fidl::encoding::DynamicFlags::empty(),
1513 ___deadline,
1514 )?;
1515 Ok(_response.map(|x| x.value))
1516 }
1517
1518 pub fn r#echo_table(
1519 &self,
1520 mut value: AllTypesTable,
1521 mut forward_to_server: &str,
1522 ___deadline: zx::MonotonicInstant,
1523 ) -> Result<AllTypesTable, fidl::Error> {
1524 let _response = self.client.send_query::<EchoEchoTableRequest, EchoEchoTableResponse>(
1525 (&mut value, forward_to_server),
1526 0x4f1fb0a512f47c4b,
1527 fidl::encoding::DynamicFlags::empty(),
1528 ___deadline,
1529 )?;
1530 Ok(_response.value)
1531 }
1532
1533 pub fn r#echo_table_with_error(
1534 &self,
1535 mut value: AllTypesTable,
1536 mut result_err: DefaultEnum,
1537 mut forward_to_server: &str,
1538 mut result_variant: RespondWith,
1539 ___deadline: zx::MonotonicInstant,
1540 ) -> Result<EchoEchoTableWithErrorResult, fidl::Error> {
1541 let _response = self.client.send_query::<
1542 EchoEchoTableWithErrorRequest,
1543 fidl::encoding::ResultType<EchoEchoTableWithErrorResponse, DefaultEnum>,
1544 >(
1545 (&mut value, result_err, forward_to_server, result_variant,),
1546 0x44e835cb1eb9a931,
1547 fidl::encoding::DynamicFlags::empty(),
1548 ___deadline,
1549 )?;
1550 Ok(_response.map(|x| x.value))
1551 }
1552
1553 pub fn r#echo_xunions(
1554 &self,
1555 mut value: Vec<AllTypesXunion>,
1556 mut forward_to_server: &str,
1557 ___deadline: zx::MonotonicInstant,
1558 ) -> Result<Vec<AllTypesXunion>, fidl::Error> {
1559 let _response = self.client.send_query::<EchoEchoXunionsRequest, EchoEchoXunionsResponse>(
1560 (value.as_mut(), forward_to_server),
1561 0x3dc181909041a583,
1562 fidl::encoding::DynamicFlags::empty(),
1563 ___deadline,
1564 )?;
1565 Ok(_response.value)
1566 }
1567
1568 pub fn r#echo_xunions_with_error(
1569 &self,
1570 mut value: Vec<AllTypesXunion>,
1571 mut result_err: DefaultEnum,
1572 mut forward_to_server: &str,
1573 mut result_variant: RespondWith,
1574 ___deadline: zx::MonotonicInstant,
1575 ) -> Result<EchoEchoXunionsWithErrorResult, fidl::Error> {
1576 let _response = self.client.send_query::<
1577 EchoEchoXunionsWithErrorRequest,
1578 fidl::encoding::ResultType<EchoEchoXunionsWithErrorResponse, DefaultEnum>,
1579 >(
1580 (value.as_mut(), result_err, forward_to_server, result_variant,),
1581 0x75184102667fa766,
1582 fidl::encoding::DynamicFlags::empty(),
1583 ___deadline,
1584 )?;
1585 Ok(_response.map(|x| x.value))
1586 }
1587
1588 pub fn r#echo_named_struct(
1589 &self,
1590 mut value: &fidl_fidl_test_imported::SimpleStruct,
1591 mut forward_to_server: &str,
1592 ___deadline: zx::MonotonicInstant,
1593 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
1594 let _response = self.client.send_query::<
1595 fidl_fidl_test_imported::RequestStruct,
1596 fidl_fidl_test_imported::ResponseStruct,
1597 >(
1598 (value, forward_to_server,),
1599 0xf2d4aa9e65f7111,
1600 fidl::encoding::DynamicFlags::empty(),
1601 ___deadline,
1602 )?;
1603 Ok(_response.value)
1604 }
1605
1606 pub fn r#echo_named_struct_with_error(
1607 &self,
1608 mut value: &fidl_fidl_test_imported::SimpleStruct,
1609 mut result_err: u32,
1610 mut forward_to_server: &str,
1611 mut result_variant: fidl_fidl_test_imported::WantResponse,
1612 ___deadline: zx::MonotonicInstant,
1613 ) -> Result<EchoEchoNamedStructWithErrorResult, fidl::Error> {
1614 let _response = self.client.send_query::<
1615 fidl_fidl_test_imported::ErrorableRequestStruct,
1616 fidl::encoding::ResultType<fidl_fidl_test_imported::ResponseStruct, u32>,
1617 >(
1618 (value, result_err, forward_to_server, result_variant,),
1619 0x5766fee9e74442e8,
1620 fidl::encoding::DynamicFlags::empty(),
1621 ___deadline,
1622 )?;
1623 Ok(_response.map(|x| x.value))
1624 }
1625
1626 pub fn r#echo_named_struct_no_ret_val(
1627 &self,
1628 mut value: &fidl_fidl_test_imported::SimpleStruct,
1629 mut forward_to_server: &str,
1630 ) -> Result<(), fidl::Error> {
1631 self.client.send::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(
1632 (value, forward_to_server),
1633 0x3a50bbf7d2113ad7,
1634 fidl::encoding::DynamicFlags::empty(),
1635 )
1636 }
1637
1638 pub fn r#echo_table_payload(
1639 &self,
1640 mut payload: &RequestTable,
1641 ___deadline: zx::MonotonicInstant,
1642 ) -> Result<ResponseTable, fidl::Error> {
1643 let _response = self.client.send_query::<RequestTable, ResponseTable>(
1644 payload,
1645 0x641d98087378c003,
1646 fidl::encoding::DynamicFlags::empty(),
1647 ___deadline,
1648 )?;
1649 Ok(_response)
1650 }
1651
1652 pub fn r#echo_table_payload_with_error(
1653 &self,
1654 mut payload: &EchoEchoTablePayloadWithErrorRequest,
1655 ___deadline: zx::MonotonicInstant,
1656 ) -> Result<EchoEchoTablePayloadWithErrorResult, fidl::Error> {
1657 let _response = self.client.send_query::<
1658 EchoEchoTablePayloadWithErrorRequest,
1659 fidl::encoding::ResultType<ResponseTable, DefaultEnum>,
1660 >(
1661 payload,
1662 0x636ed243761ab66d,
1663 fidl::encoding::DynamicFlags::empty(),
1664 ___deadline,
1665 )?;
1666 Ok(_response.map(|x| x))
1667 }
1668
1669 pub fn r#echo_table_payload_no_ret_val(
1670 &self,
1671 mut payload: &RequestTable,
1672 ) -> Result<(), fidl::Error> {
1673 self.client.send::<RequestTable>(
1674 payload,
1675 0x32961f7d718569f8,
1676 fidl::encoding::DynamicFlags::empty(),
1677 )
1678 }
1679
1680 pub fn r#echo_union_payload(
1681 &self,
1682 mut payload: &RequestUnion,
1683 ___deadline: zx::MonotonicInstant,
1684 ) -> Result<ResponseUnion, fidl::Error> {
1685 let _response = self.client.send_query::<RequestUnion, ResponseUnion>(
1686 payload,
1687 0x66def9e793f10c55,
1688 fidl::encoding::DynamicFlags::empty(),
1689 ___deadline,
1690 )?;
1691 Ok(_response)
1692 }
1693
1694 pub fn r#echo_union_payload_with_error(
1695 &self,
1696 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
1697 ___deadline: zx::MonotonicInstant,
1698 ) -> Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error> {
1699 let _response = self.client.send_query::<
1700 EchoEchoUnionPayloadWithErrorRequest,
1701 fidl::encoding::ResultType<ResponseUnion, DefaultEnum>,
1702 >(
1703 payload,
1704 0x1be890d6e68ef063,
1705 fidl::encoding::DynamicFlags::empty(),
1706 ___deadline,
1707 )?;
1708 Ok(_response.map(|x| x))
1709 }
1710
1711 pub fn r#echo_union_payload_no_ret_val(
1712 &self,
1713 mut payload: &RequestUnion,
1714 ) -> Result<(), fidl::Error> {
1715 self.client.send::<RequestUnion>(
1716 payload,
1717 0x11518bf346430040,
1718 fidl::encoding::DynamicFlags::empty(),
1719 )
1720 }
1721}
1722
1723#[cfg(target_os = "fuchsia")]
1724impl From<EchoSynchronousProxy> for zx::NullableHandle {
1725 fn from(value: EchoSynchronousProxy) -> Self {
1726 value.into_channel().into()
1727 }
1728}
1729
1730#[cfg(target_os = "fuchsia")]
1731impl From<fidl::Channel> for EchoSynchronousProxy {
1732 fn from(value: fidl::Channel) -> Self {
1733 Self::new(value)
1734 }
1735}
1736
1737#[cfg(target_os = "fuchsia")]
1738impl fidl::endpoints::FromClient for EchoSynchronousProxy {
1739 type Protocol = EchoMarker;
1740
1741 fn from_client(value: fidl::endpoints::ClientEnd<EchoMarker>) -> Self {
1742 Self::new(value.into_channel())
1743 }
1744}
1745
1746#[derive(Debug, Clone)]
1747pub struct EchoProxy {
1748 client: fidl::client::Client<fidl::encoding::DefaultFuchsiaResourceDialect>,
1749}
1750
1751impl fidl::endpoints::Proxy for EchoProxy {
1752 type Protocol = EchoMarker;
1753
1754 fn from_channel(inner: ::fidl::AsyncChannel) -> Self {
1755 Self::new(inner)
1756 }
1757
1758 fn into_channel(self) -> Result<::fidl::AsyncChannel, Self> {
1759 self.client.into_channel().map_err(|client| Self { client })
1760 }
1761
1762 fn as_channel(&self) -> &::fidl::AsyncChannel {
1763 self.client.as_channel()
1764 }
1765}
1766
1767impl EchoProxy {
1768 pub fn new(channel: ::fidl::AsyncChannel) -> Self {
1770 let protocol_name = <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME;
1771 Self { client: fidl::client::Client::new(channel, protocol_name) }
1772 }
1773
1774 pub fn take_event_stream(&self) -> EchoEventStream {
1780 EchoEventStream { event_receiver: self.client.take_event_receiver() }
1781 }
1782
1783 pub fn r#echo_table_request_composed(
1784 &self,
1785 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
1786 ) -> fidl::client::QueryResponseFut<
1787 fidl_fidl_test_imported::SimpleStruct,
1788 fidl::encoding::DefaultFuchsiaResourceDialect,
1789 > {
1790 EchoProxyInterface::r#echo_table_request_composed(self, payload)
1791 }
1792
1793 pub fn r#echo_union_response_with_error_composed(
1794 &self,
1795 mut value: i64,
1796 mut want_absolute_value: bool,
1797 mut forward_to_server: &str,
1798 mut result_err: u32,
1799 mut result_variant: fidl_fidl_test_imported::WantResponse,
1800 ) -> fidl::client::QueryResponseFut<
1801 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
1802 fidl::encoding::DefaultFuchsiaResourceDialect,
1803 > {
1804 EchoProxyInterface::r#echo_union_response_with_error_composed(
1805 self,
1806 value,
1807 want_absolute_value,
1808 forward_to_server,
1809 result_err,
1810 result_variant,
1811 )
1812 }
1813
1814 pub fn r#echo_minimal(
1815 &self,
1816 mut forward_to_server: &str,
1817 ) -> fidl::client::QueryResponseFut<(), fidl::encoding::DefaultFuchsiaResourceDialect> {
1818 EchoProxyInterface::r#echo_minimal(self, forward_to_server)
1819 }
1820
1821 pub fn r#echo_minimal_with_error(
1822 &self,
1823 mut forward_to_server: &str,
1824 mut result_variant: RespondWith,
1825 ) -> fidl::client::QueryResponseFut<
1826 EchoEchoMinimalWithErrorResult,
1827 fidl::encoding::DefaultFuchsiaResourceDialect,
1828 > {
1829 EchoProxyInterface::r#echo_minimal_with_error(self, forward_to_server, result_variant)
1830 }
1831
1832 pub fn r#echo_minimal_no_ret_val(
1833 &self,
1834 mut forward_to_server: &str,
1835 ) -> Result<(), fidl::Error> {
1836 EchoProxyInterface::r#echo_minimal_no_ret_val(self, forward_to_server)
1837 }
1838
1839 pub fn r#echo_struct(
1840 &self,
1841 mut value: Struct,
1842 mut forward_to_server: &str,
1843 ) -> fidl::client::QueryResponseFut<Struct, fidl::encoding::DefaultFuchsiaResourceDialect> {
1844 EchoProxyInterface::r#echo_struct(self, value, forward_to_server)
1845 }
1846
1847 pub fn r#echo_struct_with_error(
1848 &self,
1849 mut value: Struct,
1850 mut result_err: DefaultEnum,
1851 mut forward_to_server: &str,
1852 mut result_variant: RespondWith,
1853 ) -> fidl::client::QueryResponseFut<
1854 EchoEchoStructWithErrorResult,
1855 fidl::encoding::DefaultFuchsiaResourceDialect,
1856 > {
1857 EchoProxyInterface::r#echo_struct_with_error(
1858 self,
1859 value,
1860 result_err,
1861 forward_to_server,
1862 result_variant,
1863 )
1864 }
1865
1866 pub fn r#echo_struct_no_ret_val(
1867 &self,
1868 mut value: Struct,
1869 mut forward_to_server: &str,
1870 ) -> Result<(), fidl::Error> {
1871 EchoProxyInterface::r#echo_struct_no_ret_val(self, value, forward_to_server)
1872 }
1873
1874 pub fn r#echo_arrays(
1875 &self,
1876 mut value: ArraysStruct,
1877 mut forward_to_server: &str,
1878 ) -> fidl::client::QueryResponseFut<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
1879 {
1880 EchoProxyInterface::r#echo_arrays(self, value, forward_to_server)
1881 }
1882
1883 pub fn r#echo_arrays_with_error(
1884 &self,
1885 mut value: ArraysStruct,
1886 mut result_err: DefaultEnum,
1887 mut forward_to_server: &str,
1888 mut result_variant: RespondWith,
1889 ) -> fidl::client::QueryResponseFut<
1890 EchoEchoArraysWithErrorResult,
1891 fidl::encoding::DefaultFuchsiaResourceDialect,
1892 > {
1893 EchoProxyInterface::r#echo_arrays_with_error(
1894 self,
1895 value,
1896 result_err,
1897 forward_to_server,
1898 result_variant,
1899 )
1900 }
1901
1902 pub fn r#echo_vectors(
1903 &self,
1904 mut value: VectorsStruct,
1905 mut forward_to_server: &str,
1906 ) -> fidl::client::QueryResponseFut<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
1907 {
1908 EchoProxyInterface::r#echo_vectors(self, value, forward_to_server)
1909 }
1910
1911 pub fn r#echo_vectors_with_error(
1912 &self,
1913 mut value: VectorsStruct,
1914 mut result_err: DefaultEnum,
1915 mut forward_to_server: &str,
1916 mut result_variant: RespondWith,
1917 ) -> fidl::client::QueryResponseFut<
1918 EchoEchoVectorsWithErrorResult,
1919 fidl::encoding::DefaultFuchsiaResourceDialect,
1920 > {
1921 EchoProxyInterface::r#echo_vectors_with_error(
1922 self,
1923 value,
1924 result_err,
1925 forward_to_server,
1926 result_variant,
1927 )
1928 }
1929
1930 pub fn r#echo_table(
1931 &self,
1932 mut value: AllTypesTable,
1933 mut forward_to_server: &str,
1934 ) -> fidl::client::QueryResponseFut<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>
1935 {
1936 EchoProxyInterface::r#echo_table(self, value, forward_to_server)
1937 }
1938
1939 pub fn r#echo_table_with_error(
1940 &self,
1941 mut value: AllTypesTable,
1942 mut result_err: DefaultEnum,
1943 mut forward_to_server: &str,
1944 mut result_variant: RespondWith,
1945 ) -> fidl::client::QueryResponseFut<
1946 EchoEchoTableWithErrorResult,
1947 fidl::encoding::DefaultFuchsiaResourceDialect,
1948 > {
1949 EchoProxyInterface::r#echo_table_with_error(
1950 self,
1951 value,
1952 result_err,
1953 forward_to_server,
1954 result_variant,
1955 )
1956 }
1957
1958 pub fn r#echo_xunions(
1959 &self,
1960 mut value: Vec<AllTypesXunion>,
1961 mut forward_to_server: &str,
1962 ) -> fidl::client::QueryResponseFut<
1963 Vec<AllTypesXunion>,
1964 fidl::encoding::DefaultFuchsiaResourceDialect,
1965 > {
1966 EchoProxyInterface::r#echo_xunions(self, value, forward_to_server)
1967 }
1968
1969 pub fn r#echo_xunions_with_error(
1970 &self,
1971 mut value: Vec<AllTypesXunion>,
1972 mut result_err: DefaultEnum,
1973 mut forward_to_server: &str,
1974 mut result_variant: RespondWith,
1975 ) -> fidl::client::QueryResponseFut<
1976 EchoEchoXunionsWithErrorResult,
1977 fidl::encoding::DefaultFuchsiaResourceDialect,
1978 > {
1979 EchoProxyInterface::r#echo_xunions_with_error(
1980 self,
1981 value,
1982 result_err,
1983 forward_to_server,
1984 result_variant,
1985 )
1986 }
1987
1988 pub fn r#echo_named_struct(
1989 &self,
1990 mut value: &fidl_fidl_test_imported::SimpleStruct,
1991 mut forward_to_server: &str,
1992 ) -> fidl::client::QueryResponseFut<
1993 fidl_fidl_test_imported::SimpleStruct,
1994 fidl::encoding::DefaultFuchsiaResourceDialect,
1995 > {
1996 EchoProxyInterface::r#echo_named_struct(self, value, forward_to_server)
1997 }
1998
1999 pub fn r#echo_named_struct_with_error(
2000 &self,
2001 mut value: &fidl_fidl_test_imported::SimpleStruct,
2002 mut result_err: u32,
2003 mut forward_to_server: &str,
2004 mut result_variant: fidl_fidl_test_imported::WantResponse,
2005 ) -> fidl::client::QueryResponseFut<
2006 EchoEchoNamedStructWithErrorResult,
2007 fidl::encoding::DefaultFuchsiaResourceDialect,
2008 > {
2009 EchoProxyInterface::r#echo_named_struct_with_error(
2010 self,
2011 value,
2012 result_err,
2013 forward_to_server,
2014 result_variant,
2015 )
2016 }
2017
2018 pub fn r#echo_named_struct_no_ret_val(
2019 &self,
2020 mut value: &fidl_fidl_test_imported::SimpleStruct,
2021 mut forward_to_server: &str,
2022 ) -> Result<(), fidl::Error> {
2023 EchoProxyInterface::r#echo_named_struct_no_ret_val(self, value, forward_to_server)
2024 }
2025
2026 pub fn r#echo_table_payload(
2027 &self,
2028 mut payload: &RequestTable,
2029 ) -> fidl::client::QueryResponseFut<ResponseTable, fidl::encoding::DefaultFuchsiaResourceDialect>
2030 {
2031 EchoProxyInterface::r#echo_table_payload(self, payload)
2032 }
2033
2034 pub fn r#echo_table_payload_with_error(
2035 &self,
2036 mut payload: &EchoEchoTablePayloadWithErrorRequest,
2037 ) -> fidl::client::QueryResponseFut<
2038 EchoEchoTablePayloadWithErrorResult,
2039 fidl::encoding::DefaultFuchsiaResourceDialect,
2040 > {
2041 EchoProxyInterface::r#echo_table_payload_with_error(self, payload)
2042 }
2043
2044 pub fn r#echo_table_payload_no_ret_val(
2045 &self,
2046 mut payload: &RequestTable,
2047 ) -> Result<(), fidl::Error> {
2048 EchoProxyInterface::r#echo_table_payload_no_ret_val(self, payload)
2049 }
2050
2051 pub fn r#echo_union_payload(
2052 &self,
2053 mut payload: &RequestUnion,
2054 ) -> fidl::client::QueryResponseFut<ResponseUnion, fidl::encoding::DefaultFuchsiaResourceDialect>
2055 {
2056 EchoProxyInterface::r#echo_union_payload(self, payload)
2057 }
2058
2059 pub fn r#echo_union_payload_with_error(
2060 &self,
2061 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
2062 ) -> fidl::client::QueryResponseFut<
2063 EchoEchoUnionPayloadWithErrorResult,
2064 fidl::encoding::DefaultFuchsiaResourceDialect,
2065 > {
2066 EchoProxyInterface::r#echo_union_payload_with_error(self, payload)
2067 }
2068
2069 pub fn r#echo_union_payload_no_ret_val(
2070 &self,
2071 mut payload: &RequestUnion,
2072 ) -> Result<(), fidl::Error> {
2073 EchoProxyInterface::r#echo_union_payload_no_ret_val(self, payload)
2074 }
2075}
2076
2077impl EchoProxyInterface for EchoProxy {
2078 type EchoTableRequestComposedResponseFut = fidl::client::QueryResponseFut<
2079 fidl_fidl_test_imported::SimpleStruct,
2080 fidl::encoding::DefaultFuchsiaResourceDialect,
2081 >;
2082 fn r#echo_table_request_composed(
2083 &self,
2084 mut payload: &fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2085 ) -> Self::EchoTableRequestComposedResponseFut {
2086 fn _decode(
2087 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2088 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
2089 let _response = fidl::client::decode_transaction_body::<
2090 fidl_fidl_test_imported::ResponseStruct,
2091 fidl::encoding::DefaultFuchsiaResourceDialect,
2092 0x1d545c738c7a8ee,
2093 >(_buf?)?;
2094 Ok(_response.value)
2095 }
2096 self.client.send_query_and_decode::<
2097 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2098 fidl_fidl_test_imported::SimpleStruct,
2099 >(
2100 payload,
2101 0x1d545c738c7a8ee,
2102 fidl::encoding::DynamicFlags::empty(),
2103 _decode,
2104 )
2105 }
2106
2107 type EchoUnionResponseWithErrorComposedResponseFut = fidl::client::QueryResponseFut<
2108 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2109 fidl::encoding::DefaultFuchsiaResourceDialect,
2110 >;
2111 fn r#echo_union_response_with_error_composed(
2112 &self,
2113 mut value: i64,
2114 mut want_absolute_value: bool,
2115 mut forward_to_server: &str,
2116 mut result_err: u32,
2117 mut result_variant: fidl_fidl_test_imported::WantResponse,
2118 ) -> Self::EchoUnionResponseWithErrorComposedResponseFut {
2119 fn _decode(
2120 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2121 ) -> Result<
2122 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2123 fidl::Error,
2124 > {
2125 let _response = fidl::client::decode_transaction_body::<
2126 fidl::encoding::ResultType<
2127 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
2128 u32,
2129 >,
2130 fidl::encoding::DefaultFuchsiaResourceDialect,
2131 0x38a67e88d6106443,
2132 >(_buf?)?;
2133 Ok(_response.map(|x| x))
2134 }
2135 self.client.send_query_and_decode::<
2136 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest,
2137 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResult,
2138 >(
2139 (value, want_absolute_value, forward_to_server, result_err, result_variant,),
2140 0x38a67e88d6106443,
2141 fidl::encoding::DynamicFlags::empty(),
2142 _decode,
2143 )
2144 }
2145
2146 type EchoMinimalResponseFut =
2147 fidl::client::QueryResponseFut<(), fidl::encoding::DefaultFuchsiaResourceDialect>;
2148 fn r#echo_minimal(&self, mut forward_to_server: &str) -> Self::EchoMinimalResponseFut {
2149 fn _decode(
2150 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2151 ) -> Result<(), fidl::Error> {
2152 let _response = fidl::client::decode_transaction_body::<
2153 fidl::encoding::EmptyPayload,
2154 fidl::encoding::DefaultFuchsiaResourceDialect,
2155 0x39edd68c837482ec,
2156 >(_buf?)?;
2157 Ok(_response)
2158 }
2159 self.client.send_query_and_decode::<EchoEchoMinimalRequest, ()>(
2160 (forward_to_server,),
2161 0x39edd68c837482ec,
2162 fidl::encoding::DynamicFlags::empty(),
2163 _decode,
2164 )
2165 }
2166
2167 type EchoMinimalWithErrorResponseFut = fidl::client::QueryResponseFut<
2168 EchoEchoMinimalWithErrorResult,
2169 fidl::encoding::DefaultFuchsiaResourceDialect,
2170 >;
2171 fn r#echo_minimal_with_error(
2172 &self,
2173 mut forward_to_server: &str,
2174 mut result_variant: RespondWith,
2175 ) -> Self::EchoMinimalWithErrorResponseFut {
2176 fn _decode(
2177 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2178 ) -> Result<EchoEchoMinimalWithErrorResult, fidl::Error> {
2179 let _response = fidl::client::decode_transaction_body::<
2180 fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>,
2181 fidl::encoding::DefaultFuchsiaResourceDialect,
2182 0x36f4695996e35acc,
2183 >(_buf?)?;
2184 Ok(_response.map(|x| x))
2185 }
2186 self.client.send_query_and_decode::<
2187 EchoEchoMinimalWithErrorRequest,
2188 EchoEchoMinimalWithErrorResult,
2189 >(
2190 (forward_to_server, result_variant,),
2191 0x36f4695996e35acc,
2192 fidl::encoding::DynamicFlags::empty(),
2193 _decode,
2194 )
2195 }
2196
2197 fn r#echo_minimal_no_ret_val(&self, mut forward_to_server: &str) -> Result<(), fidl::Error> {
2198 self.client.send::<EchoEchoMinimalNoRetValRequest>(
2199 (forward_to_server,),
2200 0x42693c143e2c3694,
2201 fidl::encoding::DynamicFlags::empty(),
2202 )
2203 }
2204
2205 type EchoStructResponseFut =
2206 fidl::client::QueryResponseFut<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>;
2207 fn r#echo_struct(
2208 &self,
2209 mut value: Struct,
2210 mut forward_to_server: &str,
2211 ) -> Self::EchoStructResponseFut {
2212 fn _decode(
2213 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2214 ) -> Result<Struct, fidl::Error> {
2215 let _response = fidl::client::decode_transaction_body::<
2216 EchoEchoStructResponse,
2217 fidl::encoding::DefaultFuchsiaResourceDialect,
2218 0x4c2f85818cc53f37,
2219 >(_buf?)?;
2220 Ok(_response.value)
2221 }
2222 self.client.send_query_and_decode::<EchoEchoStructRequest, Struct>(
2223 (&mut value, forward_to_server),
2224 0x4c2f85818cc53f37,
2225 fidl::encoding::DynamicFlags::empty(),
2226 _decode,
2227 )
2228 }
2229
2230 type EchoStructWithErrorResponseFut = fidl::client::QueryResponseFut<
2231 EchoEchoStructWithErrorResult,
2232 fidl::encoding::DefaultFuchsiaResourceDialect,
2233 >;
2234 fn r#echo_struct_with_error(
2235 &self,
2236 mut value: Struct,
2237 mut result_err: DefaultEnum,
2238 mut forward_to_server: &str,
2239 mut result_variant: RespondWith,
2240 ) -> Self::EchoStructWithErrorResponseFut {
2241 fn _decode(
2242 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2243 ) -> Result<EchoEchoStructWithErrorResult, fidl::Error> {
2244 let _response = fidl::client::decode_transaction_body::<
2245 fidl::encoding::ResultType<EchoEchoStructWithErrorResponse, DefaultEnum>,
2246 fidl::encoding::DefaultFuchsiaResourceDialect,
2247 0x46cb32652c4c0899,
2248 >(_buf?)?;
2249 Ok(_response.map(|x| x.value))
2250 }
2251 self.client
2252 .send_query_and_decode::<EchoEchoStructWithErrorRequest, EchoEchoStructWithErrorResult>(
2253 (&mut value, result_err, forward_to_server, result_variant),
2254 0x46cb32652c4c0899,
2255 fidl::encoding::DynamicFlags::empty(),
2256 _decode,
2257 )
2258 }
2259
2260 fn r#echo_struct_no_ret_val(
2261 &self,
2262 mut value: Struct,
2263 mut forward_to_server: &str,
2264 ) -> Result<(), fidl::Error> {
2265 self.client.send::<EchoEchoStructNoRetValRequest>(
2266 (&mut value, forward_to_server),
2267 0x1f763e602cf5892a,
2268 fidl::encoding::DynamicFlags::empty(),
2269 )
2270 }
2271
2272 type EchoArraysResponseFut =
2273 fidl::client::QueryResponseFut<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>;
2274 fn r#echo_arrays(
2275 &self,
2276 mut value: ArraysStruct,
2277 mut forward_to_server: &str,
2278 ) -> Self::EchoArraysResponseFut {
2279 fn _decode(
2280 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2281 ) -> Result<ArraysStruct, fidl::Error> {
2282 let _response = fidl::client::decode_transaction_body::<
2283 EchoEchoArraysResponse,
2284 fidl::encoding::DefaultFuchsiaResourceDialect,
2285 0x1b6019d5611f2470,
2286 >(_buf?)?;
2287 Ok(_response.value)
2288 }
2289 self.client.send_query_and_decode::<EchoEchoArraysRequest, ArraysStruct>(
2290 (&mut value, forward_to_server),
2291 0x1b6019d5611f2470,
2292 fidl::encoding::DynamicFlags::empty(),
2293 _decode,
2294 )
2295 }
2296
2297 type EchoArraysWithErrorResponseFut = fidl::client::QueryResponseFut<
2298 EchoEchoArraysWithErrorResult,
2299 fidl::encoding::DefaultFuchsiaResourceDialect,
2300 >;
2301 fn r#echo_arrays_with_error(
2302 &self,
2303 mut value: ArraysStruct,
2304 mut result_err: DefaultEnum,
2305 mut forward_to_server: &str,
2306 mut result_variant: RespondWith,
2307 ) -> Self::EchoArraysWithErrorResponseFut {
2308 fn _decode(
2309 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2310 ) -> Result<EchoEchoArraysWithErrorResult, fidl::Error> {
2311 let _response = fidl::client::decode_transaction_body::<
2312 fidl::encoding::ResultType<EchoEchoArraysWithErrorResponse, DefaultEnum>,
2313 fidl::encoding::DefaultFuchsiaResourceDialect,
2314 0x6dbf26e67e253afa,
2315 >(_buf?)?;
2316 Ok(_response.map(|x| x.value))
2317 }
2318 self.client
2319 .send_query_and_decode::<EchoEchoArraysWithErrorRequest, EchoEchoArraysWithErrorResult>(
2320 (&mut value, result_err, forward_to_server, result_variant),
2321 0x6dbf26e67e253afa,
2322 fidl::encoding::DynamicFlags::empty(),
2323 _decode,
2324 )
2325 }
2326
2327 type EchoVectorsResponseFut = fidl::client::QueryResponseFut<
2328 VectorsStruct,
2329 fidl::encoding::DefaultFuchsiaResourceDialect,
2330 >;
2331 fn r#echo_vectors(
2332 &self,
2333 mut value: VectorsStruct,
2334 mut forward_to_server: &str,
2335 ) -> Self::EchoVectorsResponseFut {
2336 fn _decode(
2337 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2338 ) -> Result<VectorsStruct, fidl::Error> {
2339 let _response = fidl::client::decode_transaction_body::<
2340 EchoEchoVectorsResponse,
2341 fidl::encoding::DefaultFuchsiaResourceDialect,
2342 0x1582623f0d9f6e5e,
2343 >(_buf?)?;
2344 Ok(_response.value)
2345 }
2346 self.client.send_query_and_decode::<EchoEchoVectorsRequest, VectorsStruct>(
2347 (&mut value, forward_to_server),
2348 0x1582623f0d9f6e5e,
2349 fidl::encoding::DynamicFlags::empty(),
2350 _decode,
2351 )
2352 }
2353
2354 type EchoVectorsWithErrorResponseFut = fidl::client::QueryResponseFut<
2355 EchoEchoVectorsWithErrorResult,
2356 fidl::encoding::DefaultFuchsiaResourceDialect,
2357 >;
2358 fn r#echo_vectors_with_error(
2359 &self,
2360 mut value: VectorsStruct,
2361 mut result_err: DefaultEnum,
2362 mut forward_to_server: &str,
2363 mut result_variant: RespondWith,
2364 ) -> Self::EchoVectorsWithErrorResponseFut {
2365 fn _decode(
2366 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2367 ) -> Result<EchoEchoVectorsWithErrorResult, fidl::Error> {
2368 let _response = fidl::client::decode_transaction_body::<
2369 fidl::encoding::ResultType<EchoEchoVectorsWithErrorResponse, DefaultEnum>,
2370 fidl::encoding::DefaultFuchsiaResourceDialect,
2371 0x730f163401e2b3e5,
2372 >(_buf?)?;
2373 Ok(_response.map(|x| x.value))
2374 }
2375 self.client.send_query_and_decode::<
2376 EchoEchoVectorsWithErrorRequest,
2377 EchoEchoVectorsWithErrorResult,
2378 >(
2379 (&mut value, result_err, forward_to_server, result_variant,),
2380 0x730f163401e2b3e5,
2381 fidl::encoding::DynamicFlags::empty(),
2382 _decode,
2383 )
2384 }
2385
2386 type EchoTableResponseFut = fidl::client::QueryResponseFut<
2387 AllTypesTable,
2388 fidl::encoding::DefaultFuchsiaResourceDialect,
2389 >;
2390 fn r#echo_table(
2391 &self,
2392 mut value: AllTypesTable,
2393 mut forward_to_server: &str,
2394 ) -> Self::EchoTableResponseFut {
2395 fn _decode(
2396 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2397 ) -> Result<AllTypesTable, fidl::Error> {
2398 let _response = fidl::client::decode_transaction_body::<
2399 EchoEchoTableResponse,
2400 fidl::encoding::DefaultFuchsiaResourceDialect,
2401 0x4f1fb0a512f47c4b,
2402 >(_buf?)?;
2403 Ok(_response.value)
2404 }
2405 self.client.send_query_and_decode::<EchoEchoTableRequest, AllTypesTable>(
2406 (&mut value, forward_to_server),
2407 0x4f1fb0a512f47c4b,
2408 fidl::encoding::DynamicFlags::empty(),
2409 _decode,
2410 )
2411 }
2412
2413 type EchoTableWithErrorResponseFut = fidl::client::QueryResponseFut<
2414 EchoEchoTableWithErrorResult,
2415 fidl::encoding::DefaultFuchsiaResourceDialect,
2416 >;
2417 fn r#echo_table_with_error(
2418 &self,
2419 mut value: AllTypesTable,
2420 mut result_err: DefaultEnum,
2421 mut forward_to_server: &str,
2422 mut result_variant: RespondWith,
2423 ) -> Self::EchoTableWithErrorResponseFut {
2424 fn _decode(
2425 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2426 ) -> Result<EchoEchoTableWithErrorResult, fidl::Error> {
2427 let _response = fidl::client::decode_transaction_body::<
2428 fidl::encoding::ResultType<EchoEchoTableWithErrorResponse, DefaultEnum>,
2429 fidl::encoding::DefaultFuchsiaResourceDialect,
2430 0x44e835cb1eb9a931,
2431 >(_buf?)?;
2432 Ok(_response.map(|x| x.value))
2433 }
2434 self.client
2435 .send_query_and_decode::<EchoEchoTableWithErrorRequest, EchoEchoTableWithErrorResult>(
2436 (&mut value, result_err, forward_to_server, result_variant),
2437 0x44e835cb1eb9a931,
2438 fidl::encoding::DynamicFlags::empty(),
2439 _decode,
2440 )
2441 }
2442
2443 type EchoXunionsResponseFut = fidl::client::QueryResponseFut<
2444 Vec<AllTypesXunion>,
2445 fidl::encoding::DefaultFuchsiaResourceDialect,
2446 >;
2447 fn r#echo_xunions(
2448 &self,
2449 mut value: Vec<AllTypesXunion>,
2450 mut forward_to_server: &str,
2451 ) -> Self::EchoXunionsResponseFut {
2452 fn _decode(
2453 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2454 ) -> Result<Vec<AllTypesXunion>, fidl::Error> {
2455 let _response = fidl::client::decode_transaction_body::<
2456 EchoEchoXunionsResponse,
2457 fidl::encoding::DefaultFuchsiaResourceDialect,
2458 0x3dc181909041a583,
2459 >(_buf?)?;
2460 Ok(_response.value)
2461 }
2462 self.client.send_query_and_decode::<EchoEchoXunionsRequest, Vec<AllTypesXunion>>(
2463 (value.as_mut(), forward_to_server),
2464 0x3dc181909041a583,
2465 fidl::encoding::DynamicFlags::empty(),
2466 _decode,
2467 )
2468 }
2469
2470 type EchoXunionsWithErrorResponseFut = fidl::client::QueryResponseFut<
2471 EchoEchoXunionsWithErrorResult,
2472 fidl::encoding::DefaultFuchsiaResourceDialect,
2473 >;
2474 fn r#echo_xunions_with_error(
2475 &self,
2476 mut value: Vec<AllTypesXunion>,
2477 mut result_err: DefaultEnum,
2478 mut forward_to_server: &str,
2479 mut result_variant: RespondWith,
2480 ) -> Self::EchoXunionsWithErrorResponseFut {
2481 fn _decode(
2482 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2483 ) -> Result<EchoEchoXunionsWithErrorResult, fidl::Error> {
2484 let _response = fidl::client::decode_transaction_body::<
2485 fidl::encoding::ResultType<EchoEchoXunionsWithErrorResponse, DefaultEnum>,
2486 fidl::encoding::DefaultFuchsiaResourceDialect,
2487 0x75184102667fa766,
2488 >(_buf?)?;
2489 Ok(_response.map(|x| x.value))
2490 }
2491 self.client.send_query_and_decode::<
2492 EchoEchoXunionsWithErrorRequest,
2493 EchoEchoXunionsWithErrorResult,
2494 >(
2495 (value.as_mut(), result_err, forward_to_server, result_variant,),
2496 0x75184102667fa766,
2497 fidl::encoding::DynamicFlags::empty(),
2498 _decode,
2499 )
2500 }
2501
2502 type EchoNamedStructResponseFut = fidl::client::QueryResponseFut<
2503 fidl_fidl_test_imported::SimpleStruct,
2504 fidl::encoding::DefaultFuchsiaResourceDialect,
2505 >;
2506 fn r#echo_named_struct(
2507 &self,
2508 mut value: &fidl_fidl_test_imported::SimpleStruct,
2509 mut forward_to_server: &str,
2510 ) -> Self::EchoNamedStructResponseFut {
2511 fn _decode(
2512 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2513 ) -> Result<fidl_fidl_test_imported::SimpleStruct, fidl::Error> {
2514 let _response = fidl::client::decode_transaction_body::<
2515 fidl_fidl_test_imported::ResponseStruct,
2516 fidl::encoding::DefaultFuchsiaResourceDialect,
2517 0xf2d4aa9e65f7111,
2518 >(_buf?)?;
2519 Ok(_response.value)
2520 }
2521 self.client.send_query_and_decode::<
2522 fidl_fidl_test_imported::RequestStruct,
2523 fidl_fidl_test_imported::SimpleStruct,
2524 >(
2525 (value, forward_to_server,),
2526 0xf2d4aa9e65f7111,
2527 fidl::encoding::DynamicFlags::empty(),
2528 _decode,
2529 )
2530 }
2531
2532 type EchoNamedStructWithErrorResponseFut = fidl::client::QueryResponseFut<
2533 EchoEchoNamedStructWithErrorResult,
2534 fidl::encoding::DefaultFuchsiaResourceDialect,
2535 >;
2536 fn r#echo_named_struct_with_error(
2537 &self,
2538 mut value: &fidl_fidl_test_imported::SimpleStruct,
2539 mut result_err: u32,
2540 mut forward_to_server: &str,
2541 mut result_variant: fidl_fidl_test_imported::WantResponse,
2542 ) -> Self::EchoNamedStructWithErrorResponseFut {
2543 fn _decode(
2544 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2545 ) -> Result<EchoEchoNamedStructWithErrorResult, fidl::Error> {
2546 let _response = fidl::client::decode_transaction_body::<
2547 fidl::encoding::ResultType<fidl_fidl_test_imported::ResponseStruct, u32>,
2548 fidl::encoding::DefaultFuchsiaResourceDialect,
2549 0x5766fee9e74442e8,
2550 >(_buf?)?;
2551 Ok(_response.map(|x| x.value))
2552 }
2553 self.client.send_query_and_decode::<
2554 fidl_fidl_test_imported::ErrorableRequestStruct,
2555 EchoEchoNamedStructWithErrorResult,
2556 >(
2557 (value, result_err, forward_to_server, result_variant,),
2558 0x5766fee9e74442e8,
2559 fidl::encoding::DynamicFlags::empty(),
2560 _decode,
2561 )
2562 }
2563
2564 fn r#echo_named_struct_no_ret_val(
2565 &self,
2566 mut value: &fidl_fidl_test_imported::SimpleStruct,
2567 mut forward_to_server: &str,
2568 ) -> Result<(), fidl::Error> {
2569 self.client.send::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(
2570 (value, forward_to_server),
2571 0x3a50bbf7d2113ad7,
2572 fidl::encoding::DynamicFlags::empty(),
2573 )
2574 }
2575
2576 type EchoTablePayloadResponseFut = fidl::client::QueryResponseFut<
2577 ResponseTable,
2578 fidl::encoding::DefaultFuchsiaResourceDialect,
2579 >;
2580 fn r#echo_table_payload(
2581 &self,
2582 mut payload: &RequestTable,
2583 ) -> Self::EchoTablePayloadResponseFut {
2584 fn _decode(
2585 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2586 ) -> Result<ResponseTable, fidl::Error> {
2587 let _response = fidl::client::decode_transaction_body::<
2588 ResponseTable,
2589 fidl::encoding::DefaultFuchsiaResourceDialect,
2590 0x641d98087378c003,
2591 >(_buf?)?;
2592 Ok(_response)
2593 }
2594 self.client.send_query_and_decode::<RequestTable, ResponseTable>(
2595 payload,
2596 0x641d98087378c003,
2597 fidl::encoding::DynamicFlags::empty(),
2598 _decode,
2599 )
2600 }
2601
2602 type EchoTablePayloadWithErrorResponseFut = fidl::client::QueryResponseFut<
2603 EchoEchoTablePayloadWithErrorResult,
2604 fidl::encoding::DefaultFuchsiaResourceDialect,
2605 >;
2606 fn r#echo_table_payload_with_error(
2607 &self,
2608 mut payload: &EchoEchoTablePayloadWithErrorRequest,
2609 ) -> Self::EchoTablePayloadWithErrorResponseFut {
2610 fn _decode(
2611 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2612 ) -> Result<EchoEchoTablePayloadWithErrorResult, fidl::Error> {
2613 let _response = fidl::client::decode_transaction_body::<
2614 fidl::encoding::ResultType<ResponseTable, DefaultEnum>,
2615 fidl::encoding::DefaultFuchsiaResourceDialect,
2616 0x636ed243761ab66d,
2617 >(_buf?)?;
2618 Ok(_response.map(|x| x))
2619 }
2620 self.client.send_query_and_decode::<
2621 EchoEchoTablePayloadWithErrorRequest,
2622 EchoEchoTablePayloadWithErrorResult,
2623 >(
2624 payload,
2625 0x636ed243761ab66d,
2626 fidl::encoding::DynamicFlags::empty(),
2627 _decode,
2628 )
2629 }
2630
2631 fn r#echo_table_payload_no_ret_val(
2632 &self,
2633 mut payload: &RequestTable,
2634 ) -> Result<(), fidl::Error> {
2635 self.client.send::<RequestTable>(
2636 payload,
2637 0x32961f7d718569f8,
2638 fidl::encoding::DynamicFlags::empty(),
2639 )
2640 }
2641
2642 type EchoUnionPayloadResponseFut = fidl::client::QueryResponseFut<
2643 ResponseUnion,
2644 fidl::encoding::DefaultFuchsiaResourceDialect,
2645 >;
2646 fn r#echo_union_payload(
2647 &self,
2648 mut payload: &RequestUnion,
2649 ) -> Self::EchoUnionPayloadResponseFut {
2650 fn _decode(
2651 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2652 ) -> Result<ResponseUnion, fidl::Error> {
2653 let _response = fidl::client::decode_transaction_body::<
2654 ResponseUnion,
2655 fidl::encoding::DefaultFuchsiaResourceDialect,
2656 0x66def9e793f10c55,
2657 >(_buf?)?;
2658 Ok(_response)
2659 }
2660 self.client.send_query_and_decode::<RequestUnion, ResponseUnion>(
2661 payload,
2662 0x66def9e793f10c55,
2663 fidl::encoding::DynamicFlags::empty(),
2664 _decode,
2665 )
2666 }
2667
2668 type EchoUnionPayloadWithErrorResponseFut = fidl::client::QueryResponseFut<
2669 EchoEchoUnionPayloadWithErrorResult,
2670 fidl::encoding::DefaultFuchsiaResourceDialect,
2671 >;
2672 fn r#echo_union_payload_with_error(
2673 &self,
2674 mut payload: &EchoEchoUnionPayloadWithErrorRequest,
2675 ) -> Self::EchoUnionPayloadWithErrorResponseFut {
2676 fn _decode(
2677 mut _buf: Result<<fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc, fidl::Error>,
2678 ) -> Result<EchoEchoUnionPayloadWithErrorResult, fidl::Error> {
2679 let _response = fidl::client::decode_transaction_body::<
2680 fidl::encoding::ResultType<ResponseUnion, DefaultEnum>,
2681 fidl::encoding::DefaultFuchsiaResourceDialect,
2682 0x1be890d6e68ef063,
2683 >(_buf?)?;
2684 Ok(_response.map(|x| x))
2685 }
2686 self.client.send_query_and_decode::<
2687 EchoEchoUnionPayloadWithErrorRequest,
2688 EchoEchoUnionPayloadWithErrorResult,
2689 >(
2690 payload,
2691 0x1be890d6e68ef063,
2692 fidl::encoding::DynamicFlags::empty(),
2693 _decode,
2694 )
2695 }
2696
2697 fn r#echo_union_payload_no_ret_val(
2698 &self,
2699 mut payload: &RequestUnion,
2700 ) -> Result<(), fidl::Error> {
2701 self.client.send::<RequestUnion>(
2702 payload,
2703 0x11518bf346430040,
2704 fidl::encoding::DynamicFlags::empty(),
2705 )
2706 }
2707}
2708
2709pub struct EchoEventStream {
2710 event_receiver: fidl::client::EventReceiver<fidl::encoding::DefaultFuchsiaResourceDialect>,
2711}
2712
2713impl std::marker::Unpin for EchoEventStream {}
2714
2715impl futures::stream::FusedStream for EchoEventStream {
2716 fn is_terminated(&self) -> bool {
2717 self.event_receiver.is_terminated()
2718 }
2719}
2720
2721impl futures::Stream for EchoEventStream {
2722 type Item = Result<EchoEvent, fidl::Error>;
2723
2724 fn poll_next(
2725 mut self: std::pin::Pin<&mut Self>,
2726 cx: &mut std::task::Context<'_>,
2727 ) -> std::task::Poll<Option<Self::Item>> {
2728 match futures::ready!(futures::stream::StreamExt::poll_next_unpin(
2729 &mut self.event_receiver,
2730 cx
2731 )?) {
2732 Some(buf) => std::task::Poll::Ready(Some(EchoEvent::decode(buf))),
2733 None => std::task::Poll::Ready(None),
2734 }
2735 }
2736}
2737
2738#[derive(Debug)]
2739pub enum EchoEvent {
2740 EchoMinimalEvent {},
2741 EchoEvent { value: Struct },
2742 OnEchoNamedEvent { value: fidl_fidl_test_imported::SimpleStruct },
2743 OnEchoTablePayloadEvent { payload: ResponseTable },
2744 OnEchoUnionPayloadEvent { payload: ResponseUnion },
2745}
2746
2747impl EchoEvent {
2748 #[allow(irrefutable_let_patterns)]
2749 pub fn into_echo_minimal_event(self) -> Option<()> {
2750 if let EchoEvent::EchoMinimalEvent {} = self { Some(()) } else { None }
2751 }
2752 #[allow(irrefutable_let_patterns)]
2753 pub fn into_echo_event(self) -> Option<Struct> {
2754 if let EchoEvent::EchoEvent { value } = self { Some((value)) } else { None }
2755 }
2756 #[allow(irrefutable_let_patterns)]
2757 pub fn into_on_echo_named_event(self) -> Option<fidl_fidl_test_imported::SimpleStruct> {
2758 if let EchoEvent::OnEchoNamedEvent { value } = self { Some((value)) } else { None }
2759 }
2760 #[allow(irrefutable_let_patterns)]
2761 pub fn into_on_echo_table_payload_event(self) -> Option<ResponseTable> {
2762 if let EchoEvent::OnEchoTablePayloadEvent { payload } = self {
2763 Some((payload))
2764 } else {
2765 None
2766 }
2767 }
2768 #[allow(irrefutable_let_patterns)]
2769 pub fn into_on_echo_union_payload_event(self) -> Option<ResponseUnion> {
2770 if let EchoEvent::OnEchoUnionPayloadEvent { payload } = self {
2771 Some((payload))
2772 } else {
2773 None
2774 }
2775 }
2776
2777 fn decode(
2779 mut buf: <fidl::encoding::DefaultFuchsiaResourceDialect as fidl::encoding::ResourceDialect>::MessageBufEtc,
2780 ) -> Result<EchoEvent, fidl::Error> {
2781 let (bytes, _handles) = buf.split_mut();
2782 let (tx_header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2783 debug_assert_eq!(tx_header.tx_id, 0);
2784 match tx_header.ordinal {
2785 0x273b2029f1a0aee2 => {
2786 let mut out = fidl::new_empty!(
2787 fidl::encoding::EmptyPayload,
2788 fidl::encoding::DefaultFuchsiaResourceDialect
2789 );
2790 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl::encoding::EmptyPayload>(&tx_header, _body_bytes, _handles, &mut out)?;
2791 Ok((EchoEvent::EchoMinimalEvent {}))
2792 }
2793 0x1219e12e0450024 => {
2794 let mut out = fidl::new_empty!(
2795 EchoEchoEventRequest,
2796 fidl::encoding::DefaultFuchsiaResourceDialect
2797 );
2798 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoEventRequest>(&tx_header, _body_bytes, _handles, &mut out)?;
2799 Ok((EchoEvent::EchoEvent { value: out.value }))
2800 }
2801 0x749ebde83348a374 => {
2802 let mut out = fidl::new_empty!(
2803 fidl_fidl_test_imported::ResponseStruct,
2804 fidl::encoding::DefaultFuchsiaResourceDialect
2805 );
2806 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ResponseStruct>(&tx_header, _body_bytes, _handles, &mut out)?;
2807 Ok((EchoEvent::OnEchoNamedEvent { value: out.value }))
2808 }
2809 0x708dddea1cb98430 => {
2810 let mut out =
2811 fidl::new_empty!(ResponseTable, fidl::encoding::DefaultFuchsiaResourceDialect);
2812 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ResponseTable>(&tx_header, _body_bytes, _handles, &mut out)?;
2813 Ok((EchoEvent::OnEchoTablePayloadEvent { payload: out }))
2814 }
2815 0x642f4c265a05f4c0 => {
2816 let mut out =
2817 fidl::new_empty!(ResponseUnion, fidl::encoding::DefaultFuchsiaResourceDialect);
2818 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<ResponseUnion>(&tx_header, _body_bytes, _handles, &mut out)?;
2819 Ok((EchoEvent::OnEchoUnionPayloadEvent { payload: out }))
2820 }
2821 _ => Err(fidl::Error::UnknownOrdinal {
2822 ordinal: tx_header.ordinal,
2823 protocol_name: <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
2824 }),
2825 }
2826 }
2827}
2828
2829pub struct EchoRequestStream {
2831 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2832 is_terminated: bool,
2833}
2834
2835impl std::marker::Unpin for EchoRequestStream {}
2836
2837impl futures::stream::FusedStream for EchoRequestStream {
2838 fn is_terminated(&self) -> bool {
2839 self.is_terminated
2840 }
2841}
2842
2843impl fidl::endpoints::RequestStream for EchoRequestStream {
2844 type Protocol = EchoMarker;
2845 type ControlHandle = EchoControlHandle;
2846
2847 fn from_channel(channel: ::fidl::AsyncChannel) -> Self {
2848 Self { inner: std::sync::Arc::new(fidl::ServeInner::new(channel)), is_terminated: false }
2849 }
2850
2851 fn control_handle(&self) -> Self::ControlHandle {
2852 EchoControlHandle { inner: self.inner.clone() }
2853 }
2854
2855 fn into_inner(
2856 self,
2857 ) -> (::std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>, bool)
2858 {
2859 (self.inner, self.is_terminated)
2860 }
2861
2862 fn from_inner(
2863 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
2864 is_terminated: bool,
2865 ) -> Self {
2866 Self { inner, is_terminated }
2867 }
2868}
2869
2870impl futures::Stream for EchoRequestStream {
2871 type Item = Result<EchoRequest, fidl::Error>;
2872
2873 fn poll_next(
2874 mut self: std::pin::Pin<&mut Self>,
2875 cx: &mut std::task::Context<'_>,
2876 ) -> std::task::Poll<Option<Self::Item>> {
2877 let this = &mut *self;
2878 if this.inner.check_shutdown(cx) {
2879 this.is_terminated = true;
2880 return std::task::Poll::Ready(None);
2881 }
2882 if this.is_terminated {
2883 panic!("polled EchoRequestStream after completion");
2884 }
2885 fidl::encoding::with_tls_decode_buf::<_, fidl::encoding::DefaultFuchsiaResourceDialect>(
2886 |bytes, handles| {
2887 match this.inner.channel().read_etc(cx, bytes, handles) {
2888 std::task::Poll::Ready(Ok(())) => {}
2889 std::task::Poll::Pending => return std::task::Poll::Pending,
2890 std::task::Poll::Ready(Err(zx_status::Status::PEER_CLOSED)) => {
2891 this.is_terminated = true;
2892 return std::task::Poll::Ready(None);
2893 }
2894 std::task::Poll::Ready(Err(e)) => {
2895 return std::task::Poll::Ready(Some(Err(fidl::Error::ServerRequestRead(
2896 e.into(),
2897 ))));
2898 }
2899 }
2900
2901 let (header, _body_bytes) = fidl::encoding::decode_transaction_header(bytes)?;
2903
2904 std::task::Poll::Ready(Some(match header.ordinal {
2905 0x1d545c738c7a8ee => {
2906 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2907 let mut req = fidl::new_empty!(
2908 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
2909 fidl::encoding::DefaultFuchsiaResourceDialect
2910 );
2911 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest>(&header, _body_bytes, handles, &mut req)?;
2912 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2913 Ok(EchoRequest::EchoTableRequestComposed {
2914 payload: req,
2915 responder: EchoEchoTableRequestComposedResponder {
2916 control_handle: std::mem::ManuallyDrop::new(control_handle),
2917 tx_id: header.tx_id,
2918 },
2919 })
2920 }
2921 0x38a67e88d6106443 => {
2922 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2923 let mut req = fidl::new_empty!(fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest, fidl::encoding::DefaultFuchsiaResourceDialect);
2924 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedRequest>(&header, _body_bytes, handles, &mut req)?;
2925 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2926 Ok(EchoRequest::EchoUnionResponseWithErrorComposed {
2927 value: req.value,
2928 want_absolute_value: req.want_absolute_value,
2929 forward_to_server: req.forward_to_server,
2930 result_err: req.result_err,
2931 result_variant: req.result_variant,
2932
2933 responder: EchoEchoUnionResponseWithErrorComposedResponder {
2934 control_handle: std::mem::ManuallyDrop::new(control_handle),
2935 tx_id: header.tx_id,
2936 },
2937 })
2938 }
2939 0x39edd68c837482ec => {
2940 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2941 let mut req = fidl::new_empty!(
2942 EchoEchoMinimalRequest,
2943 fidl::encoding::DefaultFuchsiaResourceDialect
2944 );
2945 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalRequest>(&header, _body_bytes, handles, &mut req)?;
2946 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2947 Ok(EchoRequest::EchoMinimal {
2948 forward_to_server: req.forward_to_server,
2949
2950 responder: EchoEchoMinimalResponder {
2951 control_handle: std::mem::ManuallyDrop::new(control_handle),
2952 tx_id: header.tx_id,
2953 },
2954 })
2955 }
2956 0x36f4695996e35acc => {
2957 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2958 let mut req = fidl::new_empty!(
2959 EchoEchoMinimalWithErrorRequest,
2960 fidl::encoding::DefaultFuchsiaResourceDialect
2961 );
2962 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
2963 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2964 Ok(EchoRequest::EchoMinimalWithError {
2965 forward_to_server: req.forward_to_server,
2966 result_variant: req.result_variant,
2967
2968 responder: EchoEchoMinimalWithErrorResponder {
2969 control_handle: std::mem::ManuallyDrop::new(control_handle),
2970 tx_id: header.tx_id,
2971 },
2972 })
2973 }
2974 0x42693c143e2c3694 => {
2975 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
2976 let mut req = fidl::new_empty!(
2977 EchoEchoMinimalNoRetValRequest,
2978 fidl::encoding::DefaultFuchsiaResourceDialect
2979 );
2980 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoMinimalNoRetValRequest>(&header, _body_bytes, handles, &mut req)?;
2981 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2982 Ok(EchoRequest::EchoMinimalNoRetVal {
2983 forward_to_server: req.forward_to_server,
2984
2985 control_handle,
2986 })
2987 }
2988 0x4c2f85818cc53f37 => {
2989 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
2990 let mut req = fidl::new_empty!(
2991 EchoEchoStructRequest,
2992 fidl::encoding::DefaultFuchsiaResourceDialect
2993 );
2994 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructRequest>(&header, _body_bytes, handles, &mut req)?;
2995 let control_handle = EchoControlHandle { inner: this.inner.clone() };
2996 Ok(EchoRequest::EchoStruct {
2997 value: req.value,
2998 forward_to_server: req.forward_to_server,
2999
3000 responder: EchoEchoStructResponder {
3001 control_handle: std::mem::ManuallyDrop::new(control_handle),
3002 tx_id: header.tx_id,
3003 },
3004 })
3005 }
3006 0x46cb32652c4c0899 => {
3007 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3008 let mut req = fidl::new_empty!(
3009 EchoEchoStructWithErrorRequest,
3010 fidl::encoding::DefaultFuchsiaResourceDialect
3011 );
3012 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3013 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3014 Ok(EchoRequest::EchoStructWithError {
3015 value: req.value,
3016 result_err: req.result_err,
3017 forward_to_server: req.forward_to_server,
3018 result_variant: req.result_variant,
3019
3020 responder: EchoEchoStructWithErrorResponder {
3021 control_handle: std::mem::ManuallyDrop::new(control_handle),
3022 tx_id: header.tx_id,
3023 },
3024 })
3025 }
3026 0x1f763e602cf5892a => {
3027 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3028 let mut req = fidl::new_empty!(
3029 EchoEchoStructNoRetValRequest,
3030 fidl::encoding::DefaultFuchsiaResourceDialect
3031 );
3032 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoStructNoRetValRequest>(&header, _body_bytes, handles, &mut req)?;
3033 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3034 Ok(EchoRequest::EchoStructNoRetVal {
3035 value: req.value,
3036 forward_to_server: req.forward_to_server,
3037
3038 control_handle,
3039 })
3040 }
3041 0x1b6019d5611f2470 => {
3042 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3043 let mut req = fidl::new_empty!(
3044 EchoEchoArraysRequest,
3045 fidl::encoding::DefaultFuchsiaResourceDialect
3046 );
3047 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoArraysRequest>(&header, _body_bytes, handles, &mut req)?;
3048 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3049 Ok(EchoRequest::EchoArrays {
3050 value: req.value,
3051 forward_to_server: req.forward_to_server,
3052
3053 responder: EchoEchoArraysResponder {
3054 control_handle: std::mem::ManuallyDrop::new(control_handle),
3055 tx_id: header.tx_id,
3056 },
3057 })
3058 }
3059 0x6dbf26e67e253afa => {
3060 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3061 let mut req = fidl::new_empty!(
3062 EchoEchoArraysWithErrorRequest,
3063 fidl::encoding::DefaultFuchsiaResourceDialect
3064 );
3065 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoArraysWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3066 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3067 Ok(EchoRequest::EchoArraysWithError {
3068 value: req.value,
3069 result_err: req.result_err,
3070 forward_to_server: req.forward_to_server,
3071 result_variant: req.result_variant,
3072
3073 responder: EchoEchoArraysWithErrorResponder {
3074 control_handle: std::mem::ManuallyDrop::new(control_handle),
3075 tx_id: header.tx_id,
3076 },
3077 })
3078 }
3079 0x1582623f0d9f6e5e => {
3080 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3081 let mut req = fidl::new_empty!(
3082 EchoEchoVectorsRequest,
3083 fidl::encoding::DefaultFuchsiaResourceDialect
3084 );
3085 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoVectorsRequest>(&header, _body_bytes, handles, &mut req)?;
3086 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3087 Ok(EchoRequest::EchoVectors {
3088 value: req.value,
3089 forward_to_server: req.forward_to_server,
3090
3091 responder: EchoEchoVectorsResponder {
3092 control_handle: std::mem::ManuallyDrop::new(control_handle),
3093 tx_id: header.tx_id,
3094 },
3095 })
3096 }
3097 0x730f163401e2b3e5 => {
3098 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3099 let mut req = fidl::new_empty!(
3100 EchoEchoVectorsWithErrorRequest,
3101 fidl::encoding::DefaultFuchsiaResourceDialect
3102 );
3103 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoVectorsWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3104 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3105 Ok(EchoRequest::EchoVectorsWithError {
3106 value: req.value,
3107 result_err: req.result_err,
3108 forward_to_server: req.forward_to_server,
3109 result_variant: req.result_variant,
3110
3111 responder: EchoEchoVectorsWithErrorResponder {
3112 control_handle: std::mem::ManuallyDrop::new(control_handle),
3113 tx_id: header.tx_id,
3114 },
3115 })
3116 }
3117 0x4f1fb0a512f47c4b => {
3118 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3119 let mut req = fidl::new_empty!(
3120 EchoEchoTableRequest,
3121 fidl::encoding::DefaultFuchsiaResourceDialect
3122 );
3123 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTableRequest>(&header, _body_bytes, handles, &mut req)?;
3124 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3125 Ok(EchoRequest::EchoTable {
3126 value: req.value,
3127 forward_to_server: req.forward_to_server,
3128
3129 responder: EchoEchoTableResponder {
3130 control_handle: std::mem::ManuallyDrop::new(control_handle),
3131 tx_id: header.tx_id,
3132 },
3133 })
3134 }
3135 0x44e835cb1eb9a931 => {
3136 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3137 let mut req = fidl::new_empty!(
3138 EchoEchoTableWithErrorRequest,
3139 fidl::encoding::DefaultFuchsiaResourceDialect
3140 );
3141 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTableWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3142 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3143 Ok(EchoRequest::EchoTableWithError {
3144 value: req.value,
3145 result_err: req.result_err,
3146 forward_to_server: req.forward_to_server,
3147 result_variant: req.result_variant,
3148
3149 responder: EchoEchoTableWithErrorResponder {
3150 control_handle: std::mem::ManuallyDrop::new(control_handle),
3151 tx_id: header.tx_id,
3152 },
3153 })
3154 }
3155 0x3dc181909041a583 => {
3156 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3157 let mut req = fidl::new_empty!(
3158 EchoEchoXunionsRequest,
3159 fidl::encoding::DefaultFuchsiaResourceDialect
3160 );
3161 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoXunionsRequest>(&header, _body_bytes, handles, &mut req)?;
3162 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3163 Ok(EchoRequest::EchoXunions {
3164 value: req.value,
3165 forward_to_server: req.forward_to_server,
3166
3167 responder: EchoEchoXunionsResponder {
3168 control_handle: std::mem::ManuallyDrop::new(control_handle),
3169 tx_id: header.tx_id,
3170 },
3171 })
3172 }
3173 0x75184102667fa766 => {
3174 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3175 let mut req = fidl::new_empty!(
3176 EchoEchoXunionsWithErrorRequest,
3177 fidl::encoding::DefaultFuchsiaResourceDialect
3178 );
3179 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoXunionsWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3180 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3181 Ok(EchoRequest::EchoXunionsWithError {
3182 value: req.value,
3183 result_err: req.result_err,
3184 forward_to_server: req.forward_to_server,
3185 result_variant: req.result_variant,
3186
3187 responder: EchoEchoXunionsWithErrorResponder {
3188 control_handle: std::mem::ManuallyDrop::new(control_handle),
3189 tx_id: header.tx_id,
3190 },
3191 })
3192 }
3193 0xf2d4aa9e65f7111 => {
3194 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3195 let mut req = fidl::new_empty!(
3196 fidl_fidl_test_imported::RequestStruct,
3197 fidl::encoding::DefaultFuchsiaResourceDialect
3198 );
3199 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::RequestStruct>(&header, _body_bytes, handles, &mut req)?;
3200 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3201 Ok(EchoRequest::EchoNamedStruct {
3202 value: req.value,
3203 forward_to_server: req.forward_to_server,
3204
3205 responder: EchoEchoNamedStructResponder {
3206 control_handle: std::mem::ManuallyDrop::new(control_handle),
3207 tx_id: header.tx_id,
3208 },
3209 })
3210 }
3211 0x5766fee9e74442e8 => {
3212 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3213 let mut req = fidl::new_empty!(
3214 fidl_fidl_test_imported::ErrorableRequestStruct,
3215 fidl::encoding::DefaultFuchsiaResourceDialect
3216 );
3217 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::ErrorableRequestStruct>(&header, _body_bytes, handles, &mut req)?;
3218 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3219 Ok(EchoRequest::EchoNamedStructWithError {
3220 value: req.value,
3221 result_err: req.result_err,
3222 forward_to_server: req.forward_to_server,
3223 result_variant: req.result_variant,
3224
3225 responder: EchoEchoNamedStructWithErrorResponder {
3226 control_handle: std::mem::ManuallyDrop::new(control_handle),
3227 tx_id: header.tx_id,
3228 },
3229 })
3230 }
3231 0x3a50bbf7d2113ad7 => {
3232 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3233 let mut req = fidl::new_empty!(
3234 fidl_fidl_test_imported::EventTriggeringRequestStruct,
3235 fidl::encoding::DefaultFuchsiaResourceDialect
3236 );
3237 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<fidl_fidl_test_imported::EventTriggeringRequestStruct>(&header, _body_bytes, handles, &mut req)?;
3238 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3239 Ok(EchoRequest::EchoNamedStructNoRetVal {
3240 value: req.value,
3241 forward_to_server: req.forward_to_server,
3242
3243 control_handle,
3244 })
3245 }
3246 0x641d98087378c003 => {
3247 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3248 let mut req = fidl::new_empty!(
3249 RequestTable,
3250 fidl::encoding::DefaultFuchsiaResourceDialect
3251 );
3252 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestTable>(&header, _body_bytes, handles, &mut req)?;
3253 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3254 Ok(EchoRequest::EchoTablePayload {
3255 payload: req,
3256 responder: EchoEchoTablePayloadResponder {
3257 control_handle: std::mem::ManuallyDrop::new(control_handle),
3258 tx_id: header.tx_id,
3259 },
3260 })
3261 }
3262 0x636ed243761ab66d => {
3263 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3264 let mut req = fidl::new_empty!(
3265 EchoEchoTablePayloadWithErrorRequest,
3266 fidl::encoding::DefaultFuchsiaResourceDialect
3267 );
3268 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoTablePayloadWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3269 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3270 Ok(EchoRequest::EchoTablePayloadWithError {
3271 payload: req,
3272 responder: EchoEchoTablePayloadWithErrorResponder {
3273 control_handle: std::mem::ManuallyDrop::new(control_handle),
3274 tx_id: header.tx_id,
3275 },
3276 })
3277 }
3278 0x32961f7d718569f8 => {
3279 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3280 let mut req = fidl::new_empty!(
3281 RequestTable,
3282 fidl::encoding::DefaultFuchsiaResourceDialect
3283 );
3284 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestTable>(&header, _body_bytes, handles, &mut req)?;
3285 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3286 Ok(EchoRequest::EchoTablePayloadNoRetVal { payload: req, control_handle })
3287 }
3288 0x66def9e793f10c55 => {
3289 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3290 let mut req = fidl::new_empty!(
3291 RequestUnion,
3292 fidl::encoding::DefaultFuchsiaResourceDialect
3293 );
3294 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestUnion>(&header, _body_bytes, handles, &mut req)?;
3295 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3296 Ok(EchoRequest::EchoUnionPayload {
3297 payload: req,
3298 responder: EchoEchoUnionPayloadResponder {
3299 control_handle: std::mem::ManuallyDrop::new(control_handle),
3300 tx_id: header.tx_id,
3301 },
3302 })
3303 }
3304 0x1be890d6e68ef063 => {
3305 header.validate_request_tx_id(fidl::MethodType::TwoWay)?;
3306 let mut req = fidl::new_empty!(
3307 EchoEchoUnionPayloadWithErrorRequest,
3308 fidl::encoding::DefaultFuchsiaResourceDialect
3309 );
3310 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<EchoEchoUnionPayloadWithErrorRequest>(&header, _body_bytes, handles, &mut req)?;
3311 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3312 Ok(EchoRequest::EchoUnionPayloadWithError {
3313 payload: req,
3314 responder: EchoEchoUnionPayloadWithErrorResponder {
3315 control_handle: std::mem::ManuallyDrop::new(control_handle),
3316 tx_id: header.tx_id,
3317 },
3318 })
3319 }
3320 0x11518bf346430040 => {
3321 header.validate_request_tx_id(fidl::MethodType::OneWay)?;
3322 let mut req = fidl::new_empty!(
3323 RequestUnion,
3324 fidl::encoding::DefaultFuchsiaResourceDialect
3325 );
3326 fidl::encoding::Decoder::<fidl::encoding::DefaultFuchsiaResourceDialect>::decode_into::<RequestUnion>(&header, _body_bytes, handles, &mut req)?;
3327 let control_handle = EchoControlHandle { inner: this.inner.clone() };
3328 Ok(EchoRequest::EchoUnionPayloadNoRetVal { payload: req, control_handle })
3329 }
3330 _ => Err(fidl::Error::UnknownOrdinal {
3331 ordinal: header.ordinal,
3332 protocol_name: <EchoMarker as fidl::endpoints::ProtocolMarker>::DEBUG_NAME,
3333 }),
3334 }))
3335 },
3336 )
3337 }
3338}
3339
3340#[derive(Debug)]
3341pub enum EchoRequest {
3342 EchoTableRequestComposed {
3343 payload: fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
3344 responder: EchoEchoTableRequestComposedResponder,
3345 },
3346 EchoUnionResponseWithErrorComposed {
3347 value: i64,
3348 want_absolute_value: bool,
3349 forward_to_server: String,
3350 result_err: u32,
3351 result_variant: fidl_fidl_test_imported::WantResponse,
3352 responder: EchoEchoUnionResponseWithErrorComposedResponder,
3353 },
3354 EchoMinimal {
3355 forward_to_server: String,
3356 responder: EchoEchoMinimalResponder,
3357 },
3358 EchoMinimalWithError {
3359 forward_to_server: String,
3360 result_variant: RespondWith,
3361 responder: EchoEchoMinimalWithErrorResponder,
3362 },
3363 EchoMinimalNoRetVal {
3364 forward_to_server: String,
3365 control_handle: EchoControlHandle,
3366 },
3367 EchoStruct {
3368 value: Struct,
3369 forward_to_server: String,
3370 responder: EchoEchoStructResponder,
3371 },
3372 EchoStructWithError {
3373 value: Struct,
3374 result_err: DefaultEnum,
3375 forward_to_server: String,
3376 result_variant: RespondWith,
3377 responder: EchoEchoStructWithErrorResponder,
3378 },
3379 EchoStructNoRetVal {
3380 value: Struct,
3381 forward_to_server: String,
3382 control_handle: EchoControlHandle,
3383 },
3384 EchoArrays {
3385 value: ArraysStruct,
3386 forward_to_server: String,
3387 responder: EchoEchoArraysResponder,
3388 },
3389 EchoArraysWithError {
3390 value: ArraysStruct,
3391 result_err: DefaultEnum,
3392 forward_to_server: String,
3393 result_variant: RespondWith,
3394 responder: EchoEchoArraysWithErrorResponder,
3395 },
3396 EchoVectors {
3397 value: VectorsStruct,
3398 forward_to_server: String,
3399 responder: EchoEchoVectorsResponder,
3400 },
3401 EchoVectorsWithError {
3402 value: VectorsStruct,
3403 result_err: DefaultEnum,
3404 forward_to_server: String,
3405 result_variant: RespondWith,
3406 responder: EchoEchoVectorsWithErrorResponder,
3407 },
3408 EchoTable {
3409 value: AllTypesTable,
3410 forward_to_server: String,
3411 responder: EchoEchoTableResponder,
3412 },
3413 EchoTableWithError {
3414 value: AllTypesTable,
3415 result_err: DefaultEnum,
3416 forward_to_server: String,
3417 result_variant: RespondWith,
3418 responder: EchoEchoTableWithErrorResponder,
3419 },
3420 EchoXunions {
3421 value: Vec<AllTypesXunion>,
3422 forward_to_server: String,
3423 responder: EchoEchoXunionsResponder,
3424 },
3425 EchoXunionsWithError {
3426 value: Vec<AllTypesXunion>,
3427 result_err: DefaultEnum,
3428 forward_to_server: String,
3429 result_variant: RespondWith,
3430 responder: EchoEchoXunionsWithErrorResponder,
3431 },
3432 EchoNamedStruct {
3433 value: fidl_fidl_test_imported::SimpleStruct,
3434 forward_to_server: String,
3435 responder: EchoEchoNamedStructResponder,
3436 },
3437 EchoNamedStructWithError {
3438 value: fidl_fidl_test_imported::SimpleStruct,
3439 result_err: u32,
3440 forward_to_server: String,
3441 result_variant: fidl_fidl_test_imported::WantResponse,
3442 responder: EchoEchoNamedStructWithErrorResponder,
3443 },
3444 EchoNamedStructNoRetVal {
3445 value: fidl_fidl_test_imported::SimpleStruct,
3446 forward_to_server: String,
3447 control_handle: EchoControlHandle,
3448 },
3449 EchoTablePayload {
3450 payload: RequestTable,
3451 responder: EchoEchoTablePayloadResponder,
3452 },
3453 EchoTablePayloadWithError {
3454 payload: EchoEchoTablePayloadWithErrorRequest,
3455 responder: EchoEchoTablePayloadWithErrorResponder,
3456 },
3457 EchoTablePayloadNoRetVal {
3458 payload: RequestTable,
3459 control_handle: EchoControlHandle,
3460 },
3461 EchoUnionPayload {
3462 payload: RequestUnion,
3463 responder: EchoEchoUnionPayloadResponder,
3464 },
3465 EchoUnionPayloadWithError {
3466 payload: EchoEchoUnionPayloadWithErrorRequest,
3467 responder: EchoEchoUnionPayloadWithErrorResponder,
3468 },
3469 EchoUnionPayloadNoRetVal {
3470 payload: RequestUnion,
3471 control_handle: EchoControlHandle,
3472 },
3473}
3474
3475impl EchoRequest {
3476 #[allow(irrefutable_let_patterns)]
3477 pub fn into_echo_table_request_composed(
3478 self,
3479 ) -> Option<(
3480 fidl_fidl_test_imported::ComposedEchoTableRequestComposedRequest,
3481 EchoEchoTableRequestComposedResponder,
3482 )> {
3483 if let EchoRequest::EchoTableRequestComposed { payload, responder } = self {
3484 Some((payload, responder))
3485 } else {
3486 None
3487 }
3488 }
3489
3490 #[allow(irrefutable_let_patterns)]
3491 pub fn into_echo_union_response_with_error_composed(
3492 self,
3493 ) -> Option<(
3494 i64,
3495 bool,
3496 String,
3497 u32,
3498 fidl_fidl_test_imported::WantResponse,
3499 EchoEchoUnionResponseWithErrorComposedResponder,
3500 )> {
3501 if let EchoRequest::EchoUnionResponseWithErrorComposed {
3502 value,
3503 want_absolute_value,
3504 forward_to_server,
3505 result_err,
3506 result_variant,
3507 responder,
3508 } = self
3509 {
3510 Some((
3511 value,
3512 want_absolute_value,
3513 forward_to_server,
3514 result_err,
3515 result_variant,
3516 responder,
3517 ))
3518 } else {
3519 None
3520 }
3521 }
3522
3523 #[allow(irrefutable_let_patterns)]
3524 pub fn into_echo_minimal(self) -> Option<(String, EchoEchoMinimalResponder)> {
3525 if let EchoRequest::EchoMinimal { forward_to_server, responder } = self {
3526 Some((forward_to_server, responder))
3527 } else {
3528 None
3529 }
3530 }
3531
3532 #[allow(irrefutable_let_patterns)]
3533 pub fn into_echo_minimal_with_error(
3534 self,
3535 ) -> Option<(String, RespondWith, EchoEchoMinimalWithErrorResponder)> {
3536 if let EchoRequest::EchoMinimalWithError { forward_to_server, result_variant, responder } =
3537 self
3538 {
3539 Some((forward_to_server, result_variant, responder))
3540 } else {
3541 None
3542 }
3543 }
3544
3545 #[allow(irrefutable_let_patterns)]
3546 pub fn into_echo_minimal_no_ret_val(self) -> Option<(String, EchoControlHandle)> {
3547 if let EchoRequest::EchoMinimalNoRetVal { forward_to_server, control_handle } = self {
3548 Some((forward_to_server, control_handle))
3549 } else {
3550 None
3551 }
3552 }
3553
3554 #[allow(irrefutable_let_patterns)]
3555 pub fn into_echo_struct(self) -> Option<(Struct, String, EchoEchoStructResponder)> {
3556 if let EchoRequest::EchoStruct { value, forward_to_server, responder } = self {
3557 Some((value, forward_to_server, responder))
3558 } else {
3559 None
3560 }
3561 }
3562
3563 #[allow(irrefutable_let_patterns)]
3564 pub fn into_echo_struct_with_error(
3565 self,
3566 ) -> Option<(Struct, DefaultEnum, String, RespondWith, EchoEchoStructWithErrorResponder)> {
3567 if let EchoRequest::EchoStructWithError {
3568 value,
3569 result_err,
3570 forward_to_server,
3571 result_variant,
3572 responder,
3573 } = self
3574 {
3575 Some((value, result_err, forward_to_server, result_variant, responder))
3576 } else {
3577 None
3578 }
3579 }
3580
3581 #[allow(irrefutable_let_patterns)]
3582 pub fn into_echo_struct_no_ret_val(self) -> Option<(Struct, String, EchoControlHandle)> {
3583 if let EchoRequest::EchoStructNoRetVal { value, forward_to_server, control_handle } = self {
3584 Some((value, forward_to_server, control_handle))
3585 } else {
3586 None
3587 }
3588 }
3589
3590 #[allow(irrefutable_let_patterns)]
3591 pub fn into_echo_arrays(self) -> Option<(ArraysStruct, String, EchoEchoArraysResponder)> {
3592 if let EchoRequest::EchoArrays { value, forward_to_server, responder } = self {
3593 Some((value, forward_to_server, responder))
3594 } else {
3595 None
3596 }
3597 }
3598
3599 #[allow(irrefutable_let_patterns)]
3600 pub fn into_echo_arrays_with_error(
3601 self,
3602 ) -> Option<(ArraysStruct, DefaultEnum, String, RespondWith, EchoEchoArraysWithErrorResponder)>
3603 {
3604 if let EchoRequest::EchoArraysWithError {
3605 value,
3606 result_err,
3607 forward_to_server,
3608 result_variant,
3609 responder,
3610 } = self
3611 {
3612 Some((value, result_err, forward_to_server, result_variant, responder))
3613 } else {
3614 None
3615 }
3616 }
3617
3618 #[allow(irrefutable_let_patterns)]
3619 pub fn into_echo_vectors(self) -> Option<(VectorsStruct, String, EchoEchoVectorsResponder)> {
3620 if let EchoRequest::EchoVectors { value, forward_to_server, responder } = self {
3621 Some((value, forward_to_server, responder))
3622 } else {
3623 None
3624 }
3625 }
3626
3627 #[allow(irrefutable_let_patterns)]
3628 pub fn into_echo_vectors_with_error(
3629 self,
3630 ) -> Option<(VectorsStruct, DefaultEnum, String, RespondWith, EchoEchoVectorsWithErrorResponder)>
3631 {
3632 if let EchoRequest::EchoVectorsWithError {
3633 value,
3634 result_err,
3635 forward_to_server,
3636 result_variant,
3637 responder,
3638 } = self
3639 {
3640 Some((value, result_err, forward_to_server, result_variant, responder))
3641 } else {
3642 None
3643 }
3644 }
3645
3646 #[allow(irrefutable_let_patterns)]
3647 pub fn into_echo_table(self) -> Option<(AllTypesTable, String, EchoEchoTableResponder)> {
3648 if let EchoRequest::EchoTable { value, forward_to_server, responder } = self {
3649 Some((value, forward_to_server, responder))
3650 } else {
3651 None
3652 }
3653 }
3654
3655 #[allow(irrefutable_let_patterns)]
3656 pub fn into_echo_table_with_error(
3657 self,
3658 ) -> Option<(AllTypesTable, DefaultEnum, String, RespondWith, EchoEchoTableWithErrorResponder)>
3659 {
3660 if let EchoRequest::EchoTableWithError {
3661 value,
3662 result_err,
3663 forward_to_server,
3664 result_variant,
3665 responder,
3666 } = self
3667 {
3668 Some((value, result_err, forward_to_server, result_variant, responder))
3669 } else {
3670 None
3671 }
3672 }
3673
3674 #[allow(irrefutable_let_patterns)]
3675 pub fn into_echo_xunions(
3676 self,
3677 ) -> Option<(Vec<AllTypesXunion>, String, EchoEchoXunionsResponder)> {
3678 if let EchoRequest::EchoXunions { value, forward_to_server, responder } = self {
3679 Some((value, forward_to_server, responder))
3680 } else {
3681 None
3682 }
3683 }
3684
3685 #[allow(irrefutable_let_patterns)]
3686 pub fn into_echo_xunions_with_error(
3687 self,
3688 ) -> Option<(
3689 Vec<AllTypesXunion>,
3690 DefaultEnum,
3691 String,
3692 RespondWith,
3693 EchoEchoXunionsWithErrorResponder,
3694 )> {
3695 if let EchoRequest::EchoXunionsWithError {
3696 value,
3697 result_err,
3698 forward_to_server,
3699 result_variant,
3700 responder,
3701 } = self
3702 {
3703 Some((value, result_err, forward_to_server, result_variant, responder))
3704 } else {
3705 None
3706 }
3707 }
3708
3709 #[allow(irrefutable_let_patterns)]
3710 pub fn into_echo_named_struct(
3711 self,
3712 ) -> Option<(fidl_fidl_test_imported::SimpleStruct, String, EchoEchoNamedStructResponder)> {
3713 if let EchoRequest::EchoNamedStruct { value, forward_to_server, responder } = self {
3714 Some((value, forward_to_server, responder))
3715 } else {
3716 None
3717 }
3718 }
3719
3720 #[allow(irrefutable_let_patterns)]
3721 pub fn into_echo_named_struct_with_error(
3722 self,
3723 ) -> Option<(
3724 fidl_fidl_test_imported::SimpleStruct,
3725 u32,
3726 String,
3727 fidl_fidl_test_imported::WantResponse,
3728 EchoEchoNamedStructWithErrorResponder,
3729 )> {
3730 if let EchoRequest::EchoNamedStructWithError {
3731 value,
3732 result_err,
3733 forward_to_server,
3734 result_variant,
3735 responder,
3736 } = self
3737 {
3738 Some((value, result_err, forward_to_server, result_variant, responder))
3739 } else {
3740 None
3741 }
3742 }
3743
3744 #[allow(irrefutable_let_patterns)]
3745 pub fn into_echo_named_struct_no_ret_val(
3746 self,
3747 ) -> Option<(fidl_fidl_test_imported::SimpleStruct, String, EchoControlHandle)> {
3748 if let EchoRequest::EchoNamedStructNoRetVal { value, forward_to_server, control_handle } =
3749 self
3750 {
3751 Some((value, forward_to_server, control_handle))
3752 } else {
3753 None
3754 }
3755 }
3756
3757 #[allow(irrefutable_let_patterns)]
3758 pub fn into_echo_table_payload(self) -> Option<(RequestTable, EchoEchoTablePayloadResponder)> {
3759 if let EchoRequest::EchoTablePayload { payload, responder } = self {
3760 Some((payload, responder))
3761 } else {
3762 None
3763 }
3764 }
3765
3766 #[allow(irrefutable_let_patterns)]
3767 pub fn into_echo_table_payload_with_error(
3768 self,
3769 ) -> Option<(EchoEchoTablePayloadWithErrorRequest, EchoEchoTablePayloadWithErrorResponder)>
3770 {
3771 if let EchoRequest::EchoTablePayloadWithError { payload, responder } = self {
3772 Some((payload, responder))
3773 } else {
3774 None
3775 }
3776 }
3777
3778 #[allow(irrefutable_let_patterns)]
3779 pub fn into_echo_table_payload_no_ret_val(self) -> Option<(RequestTable, EchoControlHandle)> {
3780 if let EchoRequest::EchoTablePayloadNoRetVal { payload, control_handle } = self {
3781 Some((payload, control_handle))
3782 } else {
3783 None
3784 }
3785 }
3786
3787 #[allow(irrefutable_let_patterns)]
3788 pub fn into_echo_union_payload(self) -> Option<(RequestUnion, EchoEchoUnionPayloadResponder)> {
3789 if let EchoRequest::EchoUnionPayload { payload, responder } = self {
3790 Some((payload, responder))
3791 } else {
3792 None
3793 }
3794 }
3795
3796 #[allow(irrefutable_let_patterns)]
3797 pub fn into_echo_union_payload_with_error(
3798 self,
3799 ) -> Option<(EchoEchoUnionPayloadWithErrorRequest, EchoEchoUnionPayloadWithErrorResponder)>
3800 {
3801 if let EchoRequest::EchoUnionPayloadWithError { payload, responder } = self {
3802 Some((payload, responder))
3803 } else {
3804 None
3805 }
3806 }
3807
3808 #[allow(irrefutable_let_patterns)]
3809 pub fn into_echo_union_payload_no_ret_val(self) -> Option<(RequestUnion, EchoControlHandle)> {
3810 if let EchoRequest::EchoUnionPayloadNoRetVal { payload, control_handle } = self {
3811 Some((payload, control_handle))
3812 } else {
3813 None
3814 }
3815 }
3816
3817 pub fn method_name(&self) -> &'static str {
3819 match *self {
3820 EchoRequest::EchoTableRequestComposed { .. } => "echo_table_request_composed",
3821 EchoRequest::EchoUnionResponseWithErrorComposed { .. } => {
3822 "echo_union_response_with_error_composed"
3823 }
3824 EchoRequest::EchoMinimal { .. } => "echo_minimal",
3825 EchoRequest::EchoMinimalWithError { .. } => "echo_minimal_with_error",
3826 EchoRequest::EchoMinimalNoRetVal { .. } => "echo_minimal_no_ret_val",
3827 EchoRequest::EchoStruct { .. } => "echo_struct",
3828 EchoRequest::EchoStructWithError { .. } => "echo_struct_with_error",
3829 EchoRequest::EchoStructNoRetVal { .. } => "echo_struct_no_ret_val",
3830 EchoRequest::EchoArrays { .. } => "echo_arrays",
3831 EchoRequest::EchoArraysWithError { .. } => "echo_arrays_with_error",
3832 EchoRequest::EchoVectors { .. } => "echo_vectors",
3833 EchoRequest::EchoVectorsWithError { .. } => "echo_vectors_with_error",
3834 EchoRequest::EchoTable { .. } => "echo_table",
3835 EchoRequest::EchoTableWithError { .. } => "echo_table_with_error",
3836 EchoRequest::EchoXunions { .. } => "echo_xunions",
3837 EchoRequest::EchoXunionsWithError { .. } => "echo_xunions_with_error",
3838 EchoRequest::EchoNamedStruct { .. } => "echo_named_struct",
3839 EchoRequest::EchoNamedStructWithError { .. } => "echo_named_struct_with_error",
3840 EchoRequest::EchoNamedStructNoRetVal { .. } => "echo_named_struct_no_ret_val",
3841 EchoRequest::EchoTablePayload { .. } => "echo_table_payload",
3842 EchoRequest::EchoTablePayloadWithError { .. } => "echo_table_payload_with_error",
3843 EchoRequest::EchoTablePayloadNoRetVal { .. } => "echo_table_payload_no_ret_val",
3844 EchoRequest::EchoUnionPayload { .. } => "echo_union_payload",
3845 EchoRequest::EchoUnionPayloadWithError { .. } => "echo_union_payload_with_error",
3846 EchoRequest::EchoUnionPayloadNoRetVal { .. } => "echo_union_payload_no_ret_val",
3847 }
3848 }
3849}
3850
3851#[derive(Debug, Clone)]
3852pub struct EchoControlHandle {
3853 inner: std::sync::Arc<fidl::ServeInner<fidl::encoding::DefaultFuchsiaResourceDialect>>,
3854}
3855
3856impl fidl::endpoints::ControlHandle for EchoControlHandle {
3857 fn shutdown(&self) {
3858 self.inner.shutdown()
3859 }
3860
3861 fn shutdown_with_epitaph(&self, status: zx_status::Status) {
3862 self.inner.shutdown_with_epitaph(status)
3863 }
3864
3865 fn is_closed(&self) -> bool {
3866 self.inner.channel().is_closed()
3867 }
3868 fn on_closed(&self) -> fidl::OnSignalsRef<'_> {
3869 self.inner.channel().on_closed()
3870 }
3871
3872 #[cfg(target_os = "fuchsia")]
3873 fn signal_peer(
3874 &self,
3875 clear_mask: zx::Signals,
3876 set_mask: zx::Signals,
3877 ) -> Result<(), zx_status::Status> {
3878 use fidl::Peered;
3879 self.inner.channel().signal_peer(clear_mask, set_mask)
3880 }
3881}
3882
3883impl EchoControlHandle {
3884 pub fn send_echo_minimal_event(&self) -> Result<(), fidl::Error> {
3885 self.inner.send::<fidl::encoding::EmptyPayload>(
3886 (),
3887 0,
3888 0x273b2029f1a0aee2,
3889 fidl::encoding::DynamicFlags::empty(),
3890 )
3891 }
3892
3893 pub fn send_echo_event(&self, mut value: Struct) -> Result<(), fidl::Error> {
3894 self.inner.send::<EchoEchoEventRequest>(
3895 (&mut value,),
3896 0,
3897 0x1219e12e0450024,
3898 fidl::encoding::DynamicFlags::empty(),
3899 )
3900 }
3901
3902 pub fn send_on_echo_named_event(
3903 &self,
3904 mut value: &fidl_fidl_test_imported::SimpleStruct,
3905 ) -> Result<(), fidl::Error> {
3906 self.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
3907 (value,),
3908 0,
3909 0x749ebde83348a374,
3910 fidl::encoding::DynamicFlags::empty(),
3911 )
3912 }
3913
3914 pub fn send_on_echo_table_payload_event(
3915 &self,
3916 mut payload: &ResponseTable,
3917 ) -> Result<(), fidl::Error> {
3918 self.inner.send::<ResponseTable>(
3919 payload,
3920 0,
3921 0x708dddea1cb98430,
3922 fidl::encoding::DynamicFlags::empty(),
3923 )
3924 }
3925
3926 pub fn send_on_echo_union_payload_event(
3927 &self,
3928 mut payload: &ResponseUnion,
3929 ) -> Result<(), fidl::Error> {
3930 self.inner.send::<ResponseUnion>(
3931 payload,
3932 0,
3933 0x642f4c265a05f4c0,
3934 fidl::encoding::DynamicFlags::empty(),
3935 )
3936 }
3937}
3938
3939#[must_use = "FIDL methods require a response to be sent"]
3940#[derive(Debug)]
3941pub struct EchoEchoTableRequestComposedResponder {
3942 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
3943 tx_id: u32,
3944}
3945
3946impl std::ops::Drop for EchoEchoTableRequestComposedResponder {
3950 fn drop(&mut self) {
3951 self.control_handle.shutdown();
3952 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3954 }
3955}
3956
3957impl fidl::endpoints::Responder for EchoEchoTableRequestComposedResponder {
3958 type ControlHandle = EchoControlHandle;
3959
3960 fn control_handle(&self) -> &EchoControlHandle {
3961 &self.control_handle
3962 }
3963
3964 fn drop_without_shutdown(mut self) {
3965 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
3967 std::mem::forget(self);
3969 }
3970}
3971
3972impl EchoEchoTableRequestComposedResponder {
3973 pub fn send(
3977 self,
3978 mut value: &fidl_fidl_test_imported::SimpleStruct,
3979 ) -> Result<(), fidl::Error> {
3980 let _result = self.send_raw(value);
3981 if _result.is_err() {
3982 self.control_handle.shutdown();
3983 }
3984 self.drop_without_shutdown();
3985 _result
3986 }
3987
3988 pub fn send_no_shutdown_on_err(
3990 self,
3991 mut value: &fidl_fidl_test_imported::SimpleStruct,
3992 ) -> Result<(), fidl::Error> {
3993 let _result = self.send_raw(value);
3994 self.drop_without_shutdown();
3995 _result
3996 }
3997
3998 fn send_raw(
3999 &self,
4000 mut value: &fidl_fidl_test_imported::SimpleStruct,
4001 ) -> Result<(), fidl::Error> {
4002 self.control_handle.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
4003 (value,),
4004 self.tx_id,
4005 0x1d545c738c7a8ee,
4006 fidl::encoding::DynamicFlags::empty(),
4007 )
4008 }
4009}
4010
4011#[must_use = "FIDL methods require a response to be sent"]
4012#[derive(Debug)]
4013pub struct EchoEchoUnionResponseWithErrorComposedResponder {
4014 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4015 tx_id: u32,
4016}
4017
4018impl std::ops::Drop for EchoEchoUnionResponseWithErrorComposedResponder {
4022 fn drop(&mut self) {
4023 self.control_handle.shutdown();
4024 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4026 }
4027}
4028
4029impl fidl::endpoints::Responder for EchoEchoUnionResponseWithErrorComposedResponder {
4030 type ControlHandle = EchoControlHandle;
4031
4032 fn control_handle(&self) -> &EchoControlHandle {
4033 &self.control_handle
4034 }
4035
4036 fn drop_without_shutdown(mut self) {
4037 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4039 std::mem::forget(self);
4041 }
4042}
4043
4044impl EchoEchoUnionResponseWithErrorComposedResponder {
4045 pub fn send(
4049 self,
4050 mut result: Result<
4051 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4052 u32,
4053 >,
4054 ) -> Result<(), fidl::Error> {
4055 let _result = self.send_raw(result);
4056 if _result.is_err() {
4057 self.control_handle.shutdown();
4058 }
4059 self.drop_without_shutdown();
4060 _result
4061 }
4062
4063 pub fn send_no_shutdown_on_err(
4065 self,
4066 mut result: Result<
4067 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4068 u32,
4069 >,
4070 ) -> Result<(), fidl::Error> {
4071 let _result = self.send_raw(result);
4072 self.drop_without_shutdown();
4073 _result
4074 }
4075
4076 fn send_raw(
4077 &self,
4078 mut result: Result<
4079 &fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4080 u32,
4081 >,
4082 ) -> Result<(), fidl::Error> {
4083 self.control_handle.inner.send::<fidl::encoding::ResultType<
4084 fidl_fidl_test_imported::ComposedEchoUnionResponseWithErrorComposedResponse,
4085 u32,
4086 >>(
4087 result,
4088 self.tx_id,
4089 0x38a67e88d6106443,
4090 fidl::encoding::DynamicFlags::empty(),
4091 )
4092 }
4093}
4094
4095#[must_use = "FIDL methods require a response to be sent"]
4096#[derive(Debug)]
4097pub struct EchoEchoMinimalResponder {
4098 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4099 tx_id: u32,
4100}
4101
4102impl std::ops::Drop for EchoEchoMinimalResponder {
4106 fn drop(&mut self) {
4107 self.control_handle.shutdown();
4108 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4110 }
4111}
4112
4113impl fidl::endpoints::Responder for EchoEchoMinimalResponder {
4114 type ControlHandle = EchoControlHandle;
4115
4116 fn control_handle(&self) -> &EchoControlHandle {
4117 &self.control_handle
4118 }
4119
4120 fn drop_without_shutdown(mut self) {
4121 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4123 std::mem::forget(self);
4125 }
4126}
4127
4128impl EchoEchoMinimalResponder {
4129 pub fn send(self) -> Result<(), fidl::Error> {
4133 let _result = self.send_raw();
4134 if _result.is_err() {
4135 self.control_handle.shutdown();
4136 }
4137 self.drop_without_shutdown();
4138 _result
4139 }
4140
4141 pub fn send_no_shutdown_on_err(self) -> Result<(), fidl::Error> {
4143 let _result = self.send_raw();
4144 self.drop_without_shutdown();
4145 _result
4146 }
4147
4148 fn send_raw(&self) -> Result<(), fidl::Error> {
4149 self.control_handle.inner.send::<fidl::encoding::EmptyPayload>(
4150 (),
4151 self.tx_id,
4152 0x39edd68c837482ec,
4153 fidl::encoding::DynamicFlags::empty(),
4154 )
4155 }
4156}
4157
4158#[must_use = "FIDL methods require a response to be sent"]
4159#[derive(Debug)]
4160pub struct EchoEchoMinimalWithErrorResponder {
4161 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4162 tx_id: u32,
4163}
4164
4165impl std::ops::Drop for EchoEchoMinimalWithErrorResponder {
4169 fn drop(&mut self) {
4170 self.control_handle.shutdown();
4171 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4173 }
4174}
4175
4176impl fidl::endpoints::Responder for EchoEchoMinimalWithErrorResponder {
4177 type ControlHandle = EchoControlHandle;
4178
4179 fn control_handle(&self) -> &EchoControlHandle {
4180 &self.control_handle
4181 }
4182
4183 fn drop_without_shutdown(mut self) {
4184 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4186 std::mem::forget(self);
4188 }
4189}
4190
4191impl EchoEchoMinimalWithErrorResponder {
4192 pub fn send(self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4196 let _result = self.send_raw(result);
4197 if _result.is_err() {
4198 self.control_handle.shutdown();
4199 }
4200 self.drop_without_shutdown();
4201 _result
4202 }
4203
4204 pub fn send_no_shutdown_on_err(self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4206 let _result = self.send_raw(result);
4207 self.drop_without_shutdown();
4208 _result
4209 }
4210
4211 fn send_raw(&self, mut result: Result<(), u32>) -> Result<(), fidl::Error> {
4212 self.control_handle
4213 .inner
4214 .send::<fidl::encoding::ResultType<fidl::encoding::EmptyStruct, u32>>(
4215 result,
4216 self.tx_id,
4217 0x36f4695996e35acc,
4218 fidl::encoding::DynamicFlags::empty(),
4219 )
4220 }
4221}
4222
4223#[must_use = "FIDL methods require a response to be sent"]
4224#[derive(Debug)]
4225pub struct EchoEchoStructResponder {
4226 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4227 tx_id: u32,
4228}
4229
4230impl std::ops::Drop for EchoEchoStructResponder {
4234 fn drop(&mut self) {
4235 self.control_handle.shutdown();
4236 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4238 }
4239}
4240
4241impl fidl::endpoints::Responder for EchoEchoStructResponder {
4242 type ControlHandle = EchoControlHandle;
4243
4244 fn control_handle(&self) -> &EchoControlHandle {
4245 &self.control_handle
4246 }
4247
4248 fn drop_without_shutdown(mut self) {
4249 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4251 std::mem::forget(self);
4253 }
4254}
4255
4256impl EchoEchoStructResponder {
4257 pub fn send(self, mut value: Struct) -> Result<(), fidl::Error> {
4261 let _result = self.send_raw(value);
4262 if _result.is_err() {
4263 self.control_handle.shutdown();
4264 }
4265 self.drop_without_shutdown();
4266 _result
4267 }
4268
4269 pub fn send_no_shutdown_on_err(self, mut value: Struct) -> Result<(), fidl::Error> {
4271 let _result = self.send_raw(value);
4272 self.drop_without_shutdown();
4273 _result
4274 }
4275
4276 fn send_raw(&self, mut value: Struct) -> Result<(), fidl::Error> {
4277 self.control_handle.inner.send::<EchoEchoStructResponse>(
4278 (&mut value,),
4279 self.tx_id,
4280 0x4c2f85818cc53f37,
4281 fidl::encoding::DynamicFlags::empty(),
4282 )
4283 }
4284}
4285
4286#[must_use = "FIDL methods require a response to be sent"]
4287#[derive(Debug)]
4288pub struct EchoEchoStructWithErrorResponder {
4289 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4290 tx_id: u32,
4291}
4292
4293impl std::ops::Drop for EchoEchoStructWithErrorResponder {
4297 fn drop(&mut self) {
4298 self.control_handle.shutdown();
4299 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4301 }
4302}
4303
4304impl fidl::endpoints::Responder for EchoEchoStructWithErrorResponder {
4305 type ControlHandle = EchoControlHandle;
4306
4307 fn control_handle(&self) -> &EchoControlHandle {
4308 &self.control_handle
4309 }
4310
4311 fn drop_without_shutdown(mut self) {
4312 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4314 std::mem::forget(self);
4316 }
4317}
4318
4319impl EchoEchoStructWithErrorResponder {
4320 pub fn send(self, mut result: Result<Struct, DefaultEnum>) -> Result<(), fidl::Error> {
4324 let _result = self.send_raw(result);
4325 if _result.is_err() {
4326 self.control_handle.shutdown();
4327 }
4328 self.drop_without_shutdown();
4329 _result
4330 }
4331
4332 pub fn send_no_shutdown_on_err(
4334 self,
4335 mut result: Result<Struct, DefaultEnum>,
4336 ) -> Result<(), fidl::Error> {
4337 let _result = self.send_raw(result);
4338 self.drop_without_shutdown();
4339 _result
4340 }
4341
4342 fn send_raw(&self, mut result: Result<Struct, DefaultEnum>) -> Result<(), fidl::Error> {
4343 self.control_handle.inner.send::<fidl::encoding::ResultType<
4344 EchoEchoStructWithErrorResponse,
4345 DefaultEnum,
4346 >>(
4347 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4348 self.tx_id,
4349 0x46cb32652c4c0899,
4350 fidl::encoding::DynamicFlags::empty(),
4351 )
4352 }
4353}
4354
4355#[must_use = "FIDL methods require a response to be sent"]
4356#[derive(Debug)]
4357pub struct EchoEchoArraysResponder {
4358 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4359 tx_id: u32,
4360}
4361
4362impl std::ops::Drop for EchoEchoArraysResponder {
4366 fn drop(&mut self) {
4367 self.control_handle.shutdown();
4368 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4370 }
4371}
4372
4373impl fidl::endpoints::Responder for EchoEchoArraysResponder {
4374 type ControlHandle = EchoControlHandle;
4375
4376 fn control_handle(&self) -> &EchoControlHandle {
4377 &self.control_handle
4378 }
4379
4380 fn drop_without_shutdown(mut self) {
4381 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4383 std::mem::forget(self);
4385 }
4386}
4387
4388impl EchoEchoArraysResponder {
4389 pub fn send(self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4393 let _result = self.send_raw(value);
4394 if _result.is_err() {
4395 self.control_handle.shutdown();
4396 }
4397 self.drop_without_shutdown();
4398 _result
4399 }
4400
4401 pub fn send_no_shutdown_on_err(self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4403 let _result = self.send_raw(value);
4404 self.drop_without_shutdown();
4405 _result
4406 }
4407
4408 fn send_raw(&self, mut value: ArraysStruct) -> Result<(), fidl::Error> {
4409 self.control_handle.inner.send::<EchoEchoArraysResponse>(
4410 (&mut value,),
4411 self.tx_id,
4412 0x1b6019d5611f2470,
4413 fidl::encoding::DynamicFlags::empty(),
4414 )
4415 }
4416}
4417
4418#[must_use = "FIDL methods require a response to be sent"]
4419#[derive(Debug)]
4420pub struct EchoEchoArraysWithErrorResponder {
4421 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4422 tx_id: u32,
4423}
4424
4425impl std::ops::Drop for EchoEchoArraysWithErrorResponder {
4429 fn drop(&mut self) {
4430 self.control_handle.shutdown();
4431 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4433 }
4434}
4435
4436impl fidl::endpoints::Responder for EchoEchoArraysWithErrorResponder {
4437 type ControlHandle = EchoControlHandle;
4438
4439 fn control_handle(&self) -> &EchoControlHandle {
4440 &self.control_handle
4441 }
4442
4443 fn drop_without_shutdown(mut self) {
4444 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4446 std::mem::forget(self);
4448 }
4449}
4450
4451impl EchoEchoArraysWithErrorResponder {
4452 pub fn send(self, mut result: Result<ArraysStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4456 let _result = self.send_raw(result);
4457 if _result.is_err() {
4458 self.control_handle.shutdown();
4459 }
4460 self.drop_without_shutdown();
4461 _result
4462 }
4463
4464 pub fn send_no_shutdown_on_err(
4466 self,
4467 mut result: Result<ArraysStruct, DefaultEnum>,
4468 ) -> Result<(), fidl::Error> {
4469 let _result = self.send_raw(result);
4470 self.drop_without_shutdown();
4471 _result
4472 }
4473
4474 fn send_raw(&self, mut result: Result<ArraysStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4475 self.control_handle.inner.send::<fidl::encoding::ResultType<
4476 EchoEchoArraysWithErrorResponse,
4477 DefaultEnum,
4478 >>(
4479 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4480 self.tx_id,
4481 0x6dbf26e67e253afa,
4482 fidl::encoding::DynamicFlags::empty(),
4483 )
4484 }
4485}
4486
4487#[must_use = "FIDL methods require a response to be sent"]
4488#[derive(Debug)]
4489pub struct EchoEchoVectorsResponder {
4490 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4491 tx_id: u32,
4492}
4493
4494impl std::ops::Drop for EchoEchoVectorsResponder {
4498 fn drop(&mut self) {
4499 self.control_handle.shutdown();
4500 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4502 }
4503}
4504
4505impl fidl::endpoints::Responder for EchoEchoVectorsResponder {
4506 type ControlHandle = EchoControlHandle;
4507
4508 fn control_handle(&self) -> &EchoControlHandle {
4509 &self.control_handle
4510 }
4511
4512 fn drop_without_shutdown(mut self) {
4513 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4515 std::mem::forget(self);
4517 }
4518}
4519
4520impl EchoEchoVectorsResponder {
4521 pub fn send(self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4525 let _result = self.send_raw(value);
4526 if _result.is_err() {
4527 self.control_handle.shutdown();
4528 }
4529 self.drop_without_shutdown();
4530 _result
4531 }
4532
4533 pub fn send_no_shutdown_on_err(self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4535 let _result = self.send_raw(value);
4536 self.drop_without_shutdown();
4537 _result
4538 }
4539
4540 fn send_raw(&self, mut value: VectorsStruct) -> Result<(), fidl::Error> {
4541 self.control_handle.inner.send::<EchoEchoVectorsResponse>(
4542 (&mut value,),
4543 self.tx_id,
4544 0x1582623f0d9f6e5e,
4545 fidl::encoding::DynamicFlags::empty(),
4546 )
4547 }
4548}
4549
4550#[must_use = "FIDL methods require a response to be sent"]
4551#[derive(Debug)]
4552pub struct EchoEchoVectorsWithErrorResponder {
4553 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4554 tx_id: u32,
4555}
4556
4557impl std::ops::Drop for EchoEchoVectorsWithErrorResponder {
4561 fn drop(&mut self) {
4562 self.control_handle.shutdown();
4563 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4565 }
4566}
4567
4568impl fidl::endpoints::Responder for EchoEchoVectorsWithErrorResponder {
4569 type ControlHandle = EchoControlHandle;
4570
4571 fn control_handle(&self) -> &EchoControlHandle {
4572 &self.control_handle
4573 }
4574
4575 fn drop_without_shutdown(mut self) {
4576 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4578 std::mem::forget(self);
4580 }
4581}
4582
4583impl EchoEchoVectorsWithErrorResponder {
4584 pub fn send(self, mut result: Result<VectorsStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4588 let _result = self.send_raw(result);
4589 if _result.is_err() {
4590 self.control_handle.shutdown();
4591 }
4592 self.drop_without_shutdown();
4593 _result
4594 }
4595
4596 pub fn send_no_shutdown_on_err(
4598 self,
4599 mut result: Result<VectorsStruct, DefaultEnum>,
4600 ) -> Result<(), fidl::Error> {
4601 let _result = self.send_raw(result);
4602 self.drop_without_shutdown();
4603 _result
4604 }
4605
4606 fn send_raw(&self, mut result: Result<VectorsStruct, DefaultEnum>) -> Result<(), fidl::Error> {
4607 self.control_handle.inner.send::<fidl::encoding::ResultType<
4608 EchoEchoVectorsWithErrorResponse,
4609 DefaultEnum,
4610 >>(
4611 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4612 self.tx_id,
4613 0x730f163401e2b3e5,
4614 fidl::encoding::DynamicFlags::empty(),
4615 )
4616 }
4617}
4618
4619#[must_use = "FIDL methods require a response to be sent"]
4620#[derive(Debug)]
4621pub struct EchoEchoTableResponder {
4622 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4623 tx_id: u32,
4624}
4625
4626impl std::ops::Drop for EchoEchoTableResponder {
4630 fn drop(&mut self) {
4631 self.control_handle.shutdown();
4632 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4634 }
4635}
4636
4637impl fidl::endpoints::Responder for EchoEchoTableResponder {
4638 type ControlHandle = EchoControlHandle;
4639
4640 fn control_handle(&self) -> &EchoControlHandle {
4641 &self.control_handle
4642 }
4643
4644 fn drop_without_shutdown(mut self) {
4645 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4647 std::mem::forget(self);
4649 }
4650}
4651
4652impl EchoEchoTableResponder {
4653 pub fn send(self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4657 let _result = self.send_raw(value);
4658 if _result.is_err() {
4659 self.control_handle.shutdown();
4660 }
4661 self.drop_without_shutdown();
4662 _result
4663 }
4664
4665 pub fn send_no_shutdown_on_err(self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4667 let _result = self.send_raw(value);
4668 self.drop_without_shutdown();
4669 _result
4670 }
4671
4672 fn send_raw(&self, mut value: AllTypesTable) -> Result<(), fidl::Error> {
4673 self.control_handle.inner.send::<EchoEchoTableResponse>(
4674 (&mut value,),
4675 self.tx_id,
4676 0x4f1fb0a512f47c4b,
4677 fidl::encoding::DynamicFlags::empty(),
4678 )
4679 }
4680}
4681
4682#[must_use = "FIDL methods require a response to be sent"]
4683#[derive(Debug)]
4684pub struct EchoEchoTableWithErrorResponder {
4685 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4686 tx_id: u32,
4687}
4688
4689impl std::ops::Drop for EchoEchoTableWithErrorResponder {
4693 fn drop(&mut self) {
4694 self.control_handle.shutdown();
4695 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4697 }
4698}
4699
4700impl fidl::endpoints::Responder for EchoEchoTableWithErrorResponder {
4701 type ControlHandle = EchoControlHandle;
4702
4703 fn control_handle(&self) -> &EchoControlHandle {
4704 &self.control_handle
4705 }
4706
4707 fn drop_without_shutdown(mut self) {
4708 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4710 std::mem::forget(self);
4712 }
4713}
4714
4715impl EchoEchoTableWithErrorResponder {
4716 pub fn send(self, mut result: Result<AllTypesTable, DefaultEnum>) -> Result<(), fidl::Error> {
4720 let _result = self.send_raw(result);
4721 if _result.is_err() {
4722 self.control_handle.shutdown();
4723 }
4724 self.drop_without_shutdown();
4725 _result
4726 }
4727
4728 pub fn send_no_shutdown_on_err(
4730 self,
4731 mut result: Result<AllTypesTable, DefaultEnum>,
4732 ) -> Result<(), fidl::Error> {
4733 let _result = self.send_raw(result);
4734 self.drop_without_shutdown();
4735 _result
4736 }
4737
4738 fn send_raw(&self, mut result: Result<AllTypesTable, DefaultEnum>) -> Result<(), fidl::Error> {
4739 self.control_handle.inner.send::<fidl::encoding::ResultType<
4740 EchoEchoTableWithErrorResponse,
4741 DefaultEnum,
4742 >>(
4743 result.as_mut().map_err(|e| *e).map(|value| (value,)),
4744 self.tx_id,
4745 0x44e835cb1eb9a931,
4746 fidl::encoding::DynamicFlags::empty(),
4747 )
4748 }
4749}
4750
4751#[must_use = "FIDL methods require a response to be sent"]
4752#[derive(Debug)]
4753pub struct EchoEchoXunionsResponder {
4754 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4755 tx_id: u32,
4756}
4757
4758impl std::ops::Drop for EchoEchoXunionsResponder {
4762 fn drop(&mut self) {
4763 self.control_handle.shutdown();
4764 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4766 }
4767}
4768
4769impl fidl::endpoints::Responder for EchoEchoXunionsResponder {
4770 type ControlHandle = EchoControlHandle;
4771
4772 fn control_handle(&self) -> &EchoControlHandle {
4773 &self.control_handle
4774 }
4775
4776 fn drop_without_shutdown(mut self) {
4777 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4779 std::mem::forget(self);
4781 }
4782}
4783
4784impl EchoEchoXunionsResponder {
4785 pub fn send(self, mut value: Vec<AllTypesXunion>) -> Result<(), fidl::Error> {
4789 let _result = self.send_raw(value);
4790 if _result.is_err() {
4791 self.control_handle.shutdown();
4792 }
4793 self.drop_without_shutdown();
4794 _result
4795 }
4796
4797 pub fn send_no_shutdown_on_err(
4799 self,
4800 mut value: Vec<AllTypesXunion>,
4801 ) -> Result<(), fidl::Error> {
4802 let _result = self.send_raw(value);
4803 self.drop_without_shutdown();
4804 _result
4805 }
4806
4807 fn send_raw(&self, mut value: Vec<AllTypesXunion>) -> Result<(), fidl::Error> {
4808 self.control_handle.inner.send::<EchoEchoXunionsResponse>(
4809 (value.as_mut(),),
4810 self.tx_id,
4811 0x3dc181909041a583,
4812 fidl::encoding::DynamicFlags::empty(),
4813 )
4814 }
4815}
4816
4817#[must_use = "FIDL methods require a response to be sent"]
4818#[derive(Debug)]
4819pub struct EchoEchoXunionsWithErrorResponder {
4820 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4821 tx_id: u32,
4822}
4823
4824impl std::ops::Drop for EchoEchoXunionsWithErrorResponder {
4828 fn drop(&mut self) {
4829 self.control_handle.shutdown();
4830 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4832 }
4833}
4834
4835impl fidl::endpoints::Responder for EchoEchoXunionsWithErrorResponder {
4836 type ControlHandle = EchoControlHandle;
4837
4838 fn control_handle(&self) -> &EchoControlHandle {
4839 &self.control_handle
4840 }
4841
4842 fn drop_without_shutdown(mut self) {
4843 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4845 std::mem::forget(self);
4847 }
4848}
4849
4850impl EchoEchoXunionsWithErrorResponder {
4851 pub fn send(
4855 self,
4856 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4857 ) -> Result<(), fidl::Error> {
4858 let _result = self.send_raw(result);
4859 if _result.is_err() {
4860 self.control_handle.shutdown();
4861 }
4862 self.drop_without_shutdown();
4863 _result
4864 }
4865
4866 pub fn send_no_shutdown_on_err(
4868 self,
4869 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4870 ) -> Result<(), fidl::Error> {
4871 let _result = self.send_raw(result);
4872 self.drop_without_shutdown();
4873 _result
4874 }
4875
4876 fn send_raw(
4877 &self,
4878 mut result: Result<Vec<AllTypesXunion>, DefaultEnum>,
4879 ) -> Result<(), fidl::Error> {
4880 self.control_handle.inner.send::<fidl::encoding::ResultType<
4881 EchoEchoXunionsWithErrorResponse,
4882 DefaultEnum,
4883 >>(
4884 result.as_mut().map_err(|e| *e).map(|value| (value.as_mut_slice(),)),
4885 self.tx_id,
4886 0x75184102667fa766,
4887 fidl::encoding::DynamicFlags::empty(),
4888 )
4889 }
4890}
4891
4892#[must_use = "FIDL methods require a response to be sent"]
4893#[derive(Debug)]
4894pub struct EchoEchoNamedStructResponder {
4895 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4896 tx_id: u32,
4897}
4898
4899impl std::ops::Drop for EchoEchoNamedStructResponder {
4903 fn drop(&mut self) {
4904 self.control_handle.shutdown();
4905 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4907 }
4908}
4909
4910impl fidl::endpoints::Responder for EchoEchoNamedStructResponder {
4911 type ControlHandle = EchoControlHandle;
4912
4913 fn control_handle(&self) -> &EchoControlHandle {
4914 &self.control_handle
4915 }
4916
4917 fn drop_without_shutdown(mut self) {
4918 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4920 std::mem::forget(self);
4922 }
4923}
4924
4925impl EchoEchoNamedStructResponder {
4926 pub fn send(
4930 self,
4931 mut value: &fidl_fidl_test_imported::SimpleStruct,
4932 ) -> Result<(), fidl::Error> {
4933 let _result = self.send_raw(value);
4934 if _result.is_err() {
4935 self.control_handle.shutdown();
4936 }
4937 self.drop_without_shutdown();
4938 _result
4939 }
4940
4941 pub fn send_no_shutdown_on_err(
4943 self,
4944 mut value: &fidl_fidl_test_imported::SimpleStruct,
4945 ) -> Result<(), fidl::Error> {
4946 let _result = self.send_raw(value);
4947 self.drop_without_shutdown();
4948 _result
4949 }
4950
4951 fn send_raw(
4952 &self,
4953 mut value: &fidl_fidl_test_imported::SimpleStruct,
4954 ) -> Result<(), fidl::Error> {
4955 self.control_handle.inner.send::<fidl_fidl_test_imported::ResponseStruct>(
4956 (value,),
4957 self.tx_id,
4958 0xf2d4aa9e65f7111,
4959 fidl::encoding::DynamicFlags::empty(),
4960 )
4961 }
4962}
4963
4964#[must_use = "FIDL methods require a response to be sent"]
4965#[derive(Debug)]
4966pub struct EchoEchoNamedStructWithErrorResponder {
4967 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
4968 tx_id: u32,
4969}
4970
4971impl std::ops::Drop for EchoEchoNamedStructWithErrorResponder {
4975 fn drop(&mut self) {
4976 self.control_handle.shutdown();
4977 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4979 }
4980}
4981
4982impl fidl::endpoints::Responder for EchoEchoNamedStructWithErrorResponder {
4983 type ControlHandle = EchoControlHandle;
4984
4985 fn control_handle(&self) -> &EchoControlHandle {
4986 &self.control_handle
4987 }
4988
4989 fn drop_without_shutdown(mut self) {
4990 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
4992 std::mem::forget(self);
4994 }
4995}
4996
4997impl EchoEchoNamedStructWithErrorResponder {
4998 pub fn send(
5002 self,
5003 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5004 ) -> Result<(), fidl::Error> {
5005 let _result = self.send_raw(result);
5006 if _result.is_err() {
5007 self.control_handle.shutdown();
5008 }
5009 self.drop_without_shutdown();
5010 _result
5011 }
5012
5013 pub fn send_no_shutdown_on_err(
5015 self,
5016 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5017 ) -> Result<(), fidl::Error> {
5018 let _result = self.send_raw(result);
5019 self.drop_without_shutdown();
5020 _result
5021 }
5022
5023 fn send_raw(
5024 &self,
5025 mut result: Result<&fidl_fidl_test_imported::SimpleStruct, u32>,
5026 ) -> Result<(), fidl::Error> {
5027 self.control_handle.inner.send::<fidl::encoding::ResultType<
5028 fidl_fidl_test_imported::ResponseStruct,
5029 u32,
5030 >>(
5031 result.map(|value| (value,)),
5032 self.tx_id,
5033 0x5766fee9e74442e8,
5034 fidl::encoding::DynamicFlags::empty(),
5035 )
5036 }
5037}
5038
5039#[must_use = "FIDL methods require a response to be sent"]
5040#[derive(Debug)]
5041pub struct EchoEchoTablePayloadResponder {
5042 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5043 tx_id: u32,
5044}
5045
5046impl std::ops::Drop for EchoEchoTablePayloadResponder {
5050 fn drop(&mut self) {
5051 self.control_handle.shutdown();
5052 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5054 }
5055}
5056
5057impl fidl::endpoints::Responder for EchoEchoTablePayloadResponder {
5058 type ControlHandle = EchoControlHandle;
5059
5060 fn control_handle(&self) -> &EchoControlHandle {
5061 &self.control_handle
5062 }
5063
5064 fn drop_without_shutdown(mut self) {
5065 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5067 std::mem::forget(self);
5069 }
5070}
5071
5072impl EchoEchoTablePayloadResponder {
5073 pub fn send(self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5077 let _result = self.send_raw(payload);
5078 if _result.is_err() {
5079 self.control_handle.shutdown();
5080 }
5081 self.drop_without_shutdown();
5082 _result
5083 }
5084
5085 pub fn send_no_shutdown_on_err(self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5087 let _result = self.send_raw(payload);
5088 self.drop_without_shutdown();
5089 _result
5090 }
5091
5092 fn send_raw(&self, mut payload: &ResponseTable) -> Result<(), fidl::Error> {
5093 self.control_handle.inner.send::<ResponseTable>(
5094 payload,
5095 self.tx_id,
5096 0x641d98087378c003,
5097 fidl::encoding::DynamicFlags::empty(),
5098 )
5099 }
5100}
5101
5102#[must_use = "FIDL methods require a response to be sent"]
5103#[derive(Debug)]
5104pub struct EchoEchoTablePayloadWithErrorResponder {
5105 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5106 tx_id: u32,
5107}
5108
5109impl std::ops::Drop for EchoEchoTablePayloadWithErrorResponder {
5113 fn drop(&mut self) {
5114 self.control_handle.shutdown();
5115 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5117 }
5118}
5119
5120impl fidl::endpoints::Responder for EchoEchoTablePayloadWithErrorResponder {
5121 type ControlHandle = EchoControlHandle;
5122
5123 fn control_handle(&self) -> &EchoControlHandle {
5124 &self.control_handle
5125 }
5126
5127 fn drop_without_shutdown(mut self) {
5128 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5130 std::mem::forget(self);
5132 }
5133}
5134
5135impl EchoEchoTablePayloadWithErrorResponder {
5136 pub fn send(self, mut result: Result<&ResponseTable, DefaultEnum>) -> Result<(), fidl::Error> {
5140 let _result = self.send_raw(result);
5141 if _result.is_err() {
5142 self.control_handle.shutdown();
5143 }
5144 self.drop_without_shutdown();
5145 _result
5146 }
5147
5148 pub fn send_no_shutdown_on_err(
5150 self,
5151 mut result: Result<&ResponseTable, DefaultEnum>,
5152 ) -> Result<(), fidl::Error> {
5153 let _result = self.send_raw(result);
5154 self.drop_without_shutdown();
5155 _result
5156 }
5157
5158 fn send_raw(&self, mut result: Result<&ResponseTable, DefaultEnum>) -> Result<(), fidl::Error> {
5159 self.control_handle.inner.send::<fidl::encoding::ResultType<ResponseTable, DefaultEnum>>(
5160 result,
5161 self.tx_id,
5162 0x636ed243761ab66d,
5163 fidl::encoding::DynamicFlags::empty(),
5164 )
5165 }
5166}
5167
5168#[must_use = "FIDL methods require a response to be sent"]
5169#[derive(Debug)]
5170pub struct EchoEchoUnionPayloadResponder {
5171 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5172 tx_id: u32,
5173}
5174
5175impl std::ops::Drop for EchoEchoUnionPayloadResponder {
5179 fn drop(&mut self) {
5180 self.control_handle.shutdown();
5181 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5183 }
5184}
5185
5186impl fidl::endpoints::Responder for EchoEchoUnionPayloadResponder {
5187 type ControlHandle = EchoControlHandle;
5188
5189 fn control_handle(&self) -> &EchoControlHandle {
5190 &self.control_handle
5191 }
5192
5193 fn drop_without_shutdown(mut self) {
5194 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5196 std::mem::forget(self);
5198 }
5199}
5200
5201impl EchoEchoUnionPayloadResponder {
5202 pub fn send(self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5206 let _result = self.send_raw(payload);
5207 if _result.is_err() {
5208 self.control_handle.shutdown();
5209 }
5210 self.drop_without_shutdown();
5211 _result
5212 }
5213
5214 pub fn send_no_shutdown_on_err(self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5216 let _result = self.send_raw(payload);
5217 self.drop_without_shutdown();
5218 _result
5219 }
5220
5221 fn send_raw(&self, mut payload: &ResponseUnion) -> Result<(), fidl::Error> {
5222 self.control_handle.inner.send::<ResponseUnion>(
5223 payload,
5224 self.tx_id,
5225 0x66def9e793f10c55,
5226 fidl::encoding::DynamicFlags::empty(),
5227 )
5228 }
5229}
5230
5231#[must_use = "FIDL methods require a response to be sent"]
5232#[derive(Debug)]
5233pub struct EchoEchoUnionPayloadWithErrorResponder {
5234 control_handle: std::mem::ManuallyDrop<EchoControlHandle>,
5235 tx_id: u32,
5236}
5237
5238impl std::ops::Drop for EchoEchoUnionPayloadWithErrorResponder {
5242 fn drop(&mut self) {
5243 self.control_handle.shutdown();
5244 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5246 }
5247}
5248
5249impl fidl::endpoints::Responder for EchoEchoUnionPayloadWithErrorResponder {
5250 type ControlHandle = EchoControlHandle;
5251
5252 fn control_handle(&self) -> &EchoControlHandle {
5253 &self.control_handle
5254 }
5255
5256 fn drop_without_shutdown(mut self) {
5257 unsafe { std::mem::ManuallyDrop::drop(&mut self.control_handle) };
5259 std::mem::forget(self);
5261 }
5262}
5263
5264impl EchoEchoUnionPayloadWithErrorResponder {
5265 pub fn send(self, mut result: Result<&ResponseUnion, DefaultEnum>) -> Result<(), fidl::Error> {
5269 let _result = self.send_raw(result);
5270 if _result.is_err() {
5271 self.control_handle.shutdown();
5272 }
5273 self.drop_without_shutdown();
5274 _result
5275 }
5276
5277 pub fn send_no_shutdown_on_err(
5279 self,
5280 mut result: Result<&ResponseUnion, DefaultEnum>,
5281 ) -> Result<(), fidl::Error> {
5282 let _result = self.send_raw(result);
5283 self.drop_without_shutdown();
5284 _result
5285 }
5286
5287 fn send_raw(&self, mut result: Result<&ResponseUnion, DefaultEnum>) -> Result<(), fidl::Error> {
5288 self.control_handle.inner.send::<fidl::encoding::ResultType<ResponseUnion, DefaultEnum>>(
5289 result,
5290 self.tx_id,
5291 0x1be890d6e68ef063,
5292 fidl::encoding::DynamicFlags::empty(),
5293 )
5294 }
5295}
5296
5297mod internal {
5298 use super::*;
5299
5300 impl fidl::encoding::ResourceTypeMarker for ArraysStruct {
5301 type Borrowed<'a> = &'a mut Self;
5302 fn take_or_borrow<'a>(
5303 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5304 ) -> Self::Borrowed<'a> {
5305 value
5306 }
5307 }
5308
5309 unsafe impl fidl::encoding::TypeMarker for ArraysStruct {
5310 type Owned = Self;
5311
5312 #[inline(always)]
5313 fn inline_align(_context: fidl::encoding::Context) -> usize {
5314 8
5315 }
5316
5317 #[inline(always)]
5318 fn inline_size(_context: fidl::encoding::Context) -> usize {
5319 680
5320 }
5321 }
5322
5323 unsafe impl fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
5324 for &mut ArraysStruct
5325 {
5326 #[inline]
5327 unsafe fn encode(
5328 self,
5329 encoder: &mut fidl::encoding::Encoder<
5330 '_,
5331 fidl::encoding::DefaultFuchsiaResourceDialect,
5332 >,
5333 offset: usize,
5334 _depth: fidl::encoding::Depth,
5335 ) -> fidl::Result<()> {
5336 encoder.debug_check_bounds::<ArraysStruct>(offset);
5337 fidl::encoding::Encode::<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
5339 (
5340 <fidl::encoding::Array<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bools),
5341 <fidl::encoding::Array<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int8s),
5342 <fidl::encoding::Array<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int16s),
5343 <fidl::encoding::Array<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int32s),
5344 <fidl::encoding::Array<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int64s),
5345 <fidl::encoding::Array<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint8s),
5346 <fidl::encoding::Array<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint16s),
5347 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint32s),
5348 <fidl::encoding::Array<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint64s),
5349 <fidl::encoding::Array<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float32s),
5350 <fidl::encoding::Array<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float64s),
5351 <fidl::encoding::Array<DefaultEnum, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.enums),
5352 <fidl::encoding::Array<DefaultBits, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bits),
5353 <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),
5354 <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),
5355 <fidl::encoding::Array<fidl::encoding::UnboundedString, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
5356 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_strings),
5357 <fidl::encoding::Array<ThisIsAStruct, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
5358 <fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_structs),
5359 <fidl::encoding::Array<ThisIsAUnion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
5360 <fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_unions),
5361 <fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.arrays),
5362 <fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.vectors),
5363 <fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_vectors),
5364 <fidl::encoding::Array<ThisIsATable, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.tables),
5365 <fidl::encoding::Array<ThisIsAXunion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.xunions),
5366 ),
5367 encoder, offset, _depth
5368 )
5369 }
5370 }
5371 unsafe impl<
5372 T0: fidl::encoding::Encode<
5373 fidl::encoding::Array<bool, 3>,
5374 fidl::encoding::DefaultFuchsiaResourceDialect,
5375 >,
5376 T1: fidl::encoding::Encode<
5377 fidl::encoding::Array<i8, 3>,
5378 fidl::encoding::DefaultFuchsiaResourceDialect,
5379 >,
5380 T2: fidl::encoding::Encode<
5381 fidl::encoding::Array<i16, 3>,
5382 fidl::encoding::DefaultFuchsiaResourceDialect,
5383 >,
5384 T3: fidl::encoding::Encode<
5385 fidl::encoding::Array<i32, 3>,
5386 fidl::encoding::DefaultFuchsiaResourceDialect,
5387 >,
5388 T4: fidl::encoding::Encode<
5389 fidl::encoding::Array<i64, 3>,
5390 fidl::encoding::DefaultFuchsiaResourceDialect,
5391 >,
5392 T5: fidl::encoding::Encode<
5393 fidl::encoding::Array<u8, 3>,
5394 fidl::encoding::DefaultFuchsiaResourceDialect,
5395 >,
5396 T6: fidl::encoding::Encode<
5397 fidl::encoding::Array<u16, 3>,
5398 fidl::encoding::DefaultFuchsiaResourceDialect,
5399 >,
5400 T7: fidl::encoding::Encode<
5401 fidl::encoding::Array<u32, 3>,
5402 fidl::encoding::DefaultFuchsiaResourceDialect,
5403 >,
5404 T8: fidl::encoding::Encode<
5405 fidl::encoding::Array<u64, 3>,
5406 fidl::encoding::DefaultFuchsiaResourceDialect,
5407 >,
5408 T9: fidl::encoding::Encode<
5409 fidl::encoding::Array<f32, 3>,
5410 fidl::encoding::DefaultFuchsiaResourceDialect,
5411 >,
5412 T10: fidl::encoding::Encode<
5413 fidl::encoding::Array<f64, 3>,
5414 fidl::encoding::DefaultFuchsiaResourceDialect,
5415 >,
5416 T11: fidl::encoding::Encode<
5417 fidl::encoding::Array<DefaultEnum, 3>,
5418 fidl::encoding::DefaultFuchsiaResourceDialect,
5419 >,
5420 T12: fidl::encoding::Encode<
5421 fidl::encoding::Array<DefaultBits, 3>,
5422 fidl::encoding::DefaultFuchsiaResourceDialect,
5423 >,
5424 T13: fidl::encoding::Encode<
5425 fidl::encoding::Array<
5426 fidl::encoding::HandleType<
5427 fidl::NullableHandle,
5428 { fidl::ObjectType::NONE.into_raw() },
5429 2147483648,
5430 >,
5431 3,
5432 >,
5433 fidl::encoding::DefaultFuchsiaResourceDialect,
5434 >,
5435 T14: fidl::encoding::Encode<
5436 fidl::encoding::Array<
5437 fidl::encoding::Optional<
5438 fidl::encoding::HandleType<
5439 fidl::NullableHandle,
5440 { fidl::ObjectType::NONE.into_raw() },
5441 2147483648,
5442 >,
5443 >,
5444 3,
5445 >,
5446 fidl::encoding::DefaultFuchsiaResourceDialect,
5447 >,
5448 T15: fidl::encoding::Encode<
5449 fidl::encoding::Array<fidl::encoding::UnboundedString, 3>,
5450 fidl::encoding::DefaultFuchsiaResourceDialect,
5451 >,
5452 T16: fidl::encoding::Encode<
5453 fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3>,
5454 fidl::encoding::DefaultFuchsiaResourceDialect,
5455 >,
5456 T17: fidl::encoding::Encode<
5457 fidl::encoding::Array<ThisIsAStruct, 3>,
5458 fidl::encoding::DefaultFuchsiaResourceDialect,
5459 >,
5460 T18: fidl::encoding::Encode<
5461 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5462 fidl::encoding::DefaultFuchsiaResourceDialect,
5463 >,
5464 T19: fidl::encoding::Encode<
5465 fidl::encoding::Array<ThisIsAUnion, 3>,
5466 fidl::encoding::DefaultFuchsiaResourceDialect,
5467 >,
5468 T20: fidl::encoding::Encode<
5469 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5470 fidl::encoding::DefaultFuchsiaResourceDialect,
5471 >,
5472 T21: fidl::encoding::Encode<
5473 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5474 fidl::encoding::DefaultFuchsiaResourceDialect,
5475 >,
5476 T22: fidl::encoding::Encode<
5477 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5478 fidl::encoding::DefaultFuchsiaResourceDialect,
5479 >,
5480 T23: fidl::encoding::Encode<
5481 fidl::encoding::Array<
5482 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5483 3,
5484 >,
5485 fidl::encoding::DefaultFuchsiaResourceDialect,
5486 >,
5487 T24: fidl::encoding::Encode<
5488 fidl::encoding::Array<ThisIsATable, 3>,
5489 fidl::encoding::DefaultFuchsiaResourceDialect,
5490 >,
5491 T25: fidl::encoding::Encode<
5492 fidl::encoding::Array<ThisIsAXunion, 3>,
5493 fidl::encoding::DefaultFuchsiaResourceDialect,
5494 >,
5495 > fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
5496 for (
5497 T0,
5498 T1,
5499 T2,
5500 T3,
5501 T4,
5502 T5,
5503 T6,
5504 T7,
5505 T8,
5506 T9,
5507 T10,
5508 T11,
5509 T12,
5510 T13,
5511 T14,
5512 T15,
5513 T16,
5514 T17,
5515 T18,
5516 T19,
5517 T20,
5518 T21,
5519 T22,
5520 T23,
5521 T24,
5522 T25,
5523 )
5524 {
5525 #[inline]
5526 unsafe fn encode(
5527 self,
5528 encoder: &mut fidl::encoding::Encoder<
5529 '_,
5530 fidl::encoding::DefaultFuchsiaResourceDialect,
5531 >,
5532 offset: usize,
5533 depth: fidl::encoding::Depth,
5534 ) -> fidl::Result<()> {
5535 encoder.debug_check_bounds::<ArraysStruct>(offset);
5536 unsafe {
5539 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(48);
5540 (ptr as *mut u64).write_unaligned(0);
5541 }
5542 unsafe {
5543 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(56);
5544 (ptr as *mut u64).write_unaligned(0);
5545 }
5546 unsafe {
5547 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(104);
5548 (ptr as *mut u64).write_unaligned(0);
5549 }
5550 unsafe {
5551 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(480);
5552 (ptr as *mut u64).write_unaligned(0);
5553 }
5554 self.0.encode(encoder, offset + 0, depth)?;
5556 self.1.encode(encoder, offset + 3, depth)?;
5557 self.2.encode(encoder, offset + 6, depth)?;
5558 self.3.encode(encoder, offset + 12, depth)?;
5559 self.4.encode(encoder, offset + 24, depth)?;
5560 self.5.encode(encoder, offset + 48, depth)?;
5561 self.6.encode(encoder, offset + 52, depth)?;
5562 self.7.encode(encoder, offset + 60, depth)?;
5563 self.8.encode(encoder, offset + 72, depth)?;
5564 self.9.encode(encoder, offset + 96, depth)?;
5565 self.10.encode(encoder, offset + 112, depth)?;
5566 self.11.encode(encoder, offset + 136, depth)?;
5567 self.12.encode(encoder, offset + 148, depth)?;
5568 self.13.encode(encoder, offset + 160, depth)?;
5569 self.14.encode(encoder, offset + 172, depth)?;
5570 self.15.encode(encoder, offset + 184, depth)?;
5571 self.16.encode(encoder, offset + 232, depth)?;
5572 self.17.encode(encoder, offset + 280, depth)?;
5573 self.18.encode(encoder, offset + 328, depth)?;
5574 self.19.encode(encoder, offset + 352, depth)?;
5575 self.20.encode(encoder, offset + 400, depth)?;
5576 self.21.encode(encoder, offset + 448, depth)?;
5577 self.22.encode(encoder, offset + 488, depth)?;
5578 self.23.encode(encoder, offset + 536, depth)?;
5579 self.24.encode(encoder, offset + 584, depth)?;
5580 self.25.encode(encoder, offset + 632, depth)?;
5581 Ok(())
5582 }
5583 }
5584
5585 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for ArraysStruct {
5586 #[inline(always)]
5587 fn new_empty() -> Self {
5588 Self {
5589 bools: fidl::new_empty!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5590 int8s: fidl::new_empty!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5591 int16s: fidl::new_empty!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5592 int32s: fidl::new_empty!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5593 int64s: fidl::new_empty!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5594 uint8s: fidl::new_empty!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5595 uint16s: fidl::new_empty!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5596 uint32s: fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5597 uint64s: fidl::new_empty!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5598 float32s: fidl::new_empty!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5599 float64s: fidl::new_empty!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5600 enums: fidl::new_empty!(fidl::encoding::Array<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5601 bits: fidl::new_empty!(fidl::encoding::Array<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5602 handles: fidl::new_empty!(
5603 fidl::encoding::Array<
5604 fidl::encoding::HandleType<
5605 fidl::NullableHandle,
5606 { fidl::ObjectType::NONE.into_raw() },
5607 2147483648,
5608 >,
5609 3,
5610 >,
5611 fidl::encoding::DefaultFuchsiaResourceDialect
5612 ),
5613 nullable_handles: fidl::new_empty!(
5614 fidl::encoding::Array<
5615 fidl::encoding::Optional<
5616 fidl::encoding::HandleType<
5617 fidl::NullableHandle,
5618 { fidl::ObjectType::NONE.into_raw() },
5619 2147483648,
5620 >,
5621 >,
5622 3,
5623 >,
5624 fidl::encoding::DefaultFuchsiaResourceDialect
5625 ),
5626 strings: fidl::new_empty!(fidl::encoding::Array<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5627 nullable_strings: fidl::new_empty!(
5628 fidl::encoding::Array<
5629 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
5630 3,
5631 >,
5632 fidl::encoding::DefaultFuchsiaResourceDialect
5633 ),
5634 structs: fidl::new_empty!(fidl::encoding::Array<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5635 nullable_structs: fidl::new_empty!(
5636 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5637 fidl::encoding::DefaultFuchsiaResourceDialect
5638 ),
5639 unions: fidl::new_empty!(fidl::encoding::Array<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5640 nullable_unions: fidl::new_empty!(
5641 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5642 fidl::encoding::DefaultFuchsiaResourceDialect
5643 ),
5644 arrays: fidl::new_empty!(
5645 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5646 fidl::encoding::DefaultFuchsiaResourceDialect
5647 ),
5648 vectors: fidl::new_empty!(
5649 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5650 fidl::encoding::DefaultFuchsiaResourceDialect
5651 ),
5652 nullable_vectors: fidl::new_empty!(
5653 fidl::encoding::Array<
5654 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5655 3,
5656 >,
5657 fidl::encoding::DefaultFuchsiaResourceDialect
5658 ),
5659 tables: fidl::new_empty!(fidl::encoding::Array<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5660 xunions: fidl::new_empty!(fidl::encoding::Array<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
5661 }
5662 }
5663
5664 #[inline]
5665 unsafe fn decode(
5666 &mut self,
5667 decoder: &mut fidl::encoding::Decoder<
5668 '_,
5669 fidl::encoding::DefaultFuchsiaResourceDialect,
5670 >,
5671 offset: usize,
5672 _depth: fidl::encoding::Depth,
5673 ) -> fidl::Result<()> {
5674 decoder.debug_check_bounds::<Self>(offset);
5675 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(48) };
5677 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5678 let mask = 0xff000000u64;
5679 let maskedval = padval & mask;
5680 if maskedval != 0 {
5681 return Err(fidl::Error::NonZeroPadding {
5682 padding_start: offset + 48 + ((mask as u64).trailing_zeros() / 8) as usize,
5683 });
5684 }
5685 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(56) };
5686 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5687 let mask = 0xffff0000u64;
5688 let maskedval = padval & mask;
5689 if maskedval != 0 {
5690 return Err(fidl::Error::NonZeroPadding {
5691 padding_start: offset + 56 + ((mask as u64).trailing_zeros() / 8) as usize,
5692 });
5693 }
5694 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(104) };
5695 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5696 let mask = 0xffffffff00000000u64;
5697 let maskedval = padval & mask;
5698 if maskedval != 0 {
5699 return Err(fidl::Error::NonZeroPadding {
5700 padding_start: offset + 104 + ((mask as u64).trailing_zeros() / 8) as usize,
5701 });
5702 }
5703 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(480) };
5704 let padval = unsafe { (ptr as *const u64).read_unaligned() };
5705 let mask = 0xffffffff00000000u64;
5706 let maskedval = padval & mask;
5707 if maskedval != 0 {
5708 return Err(fidl::Error::NonZeroPadding {
5709 padding_start: offset + 480 + ((mask as u64).trailing_zeros() / 8) as usize,
5710 });
5711 }
5712 fidl::decode!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bools, decoder, offset + 0, _depth)?;
5713 fidl::decode!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int8s, decoder, offset + 3, _depth)?;
5714 fidl::decode!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int16s, decoder, offset + 6, _depth)?;
5715 fidl::decode!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int32s, decoder, offset + 12, _depth)?;
5716 fidl::decode!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int64s, decoder, offset + 24, _depth)?;
5717 fidl::decode!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint8s, decoder, offset + 48, _depth)?;
5718 fidl::decode!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint16s, decoder, offset + 52, _depth)?;
5719 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint32s, decoder, offset + 60, _depth)?;
5720 fidl::decode!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint64s, decoder, offset + 72, _depth)?;
5721 fidl::decode!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float32s, decoder, offset + 96, _depth)?;
5722 fidl::decode!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float64s, decoder, offset + 112, _depth)?;
5723 fidl::decode!(fidl::encoding::Array<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.enums, decoder, offset + 136, _depth)?;
5724 fidl::decode!(fidl::encoding::Array<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bits, decoder, offset + 148, _depth)?;
5725 fidl::decode!(
5726 fidl::encoding::Array<
5727 fidl::encoding::HandleType<
5728 fidl::NullableHandle,
5729 { fidl::ObjectType::NONE.into_raw() },
5730 2147483648,
5731 >,
5732 3,
5733 >,
5734 fidl::encoding::DefaultFuchsiaResourceDialect,
5735 &mut self.handles,
5736 decoder,
5737 offset + 160,
5738 _depth
5739 )?;
5740 fidl::decode!(
5741 fidl::encoding::Array<
5742 fidl::encoding::Optional<
5743 fidl::encoding::HandleType<
5744 fidl::NullableHandle,
5745 { fidl::ObjectType::NONE.into_raw() },
5746 2147483648,
5747 >,
5748 >,
5749 3,
5750 >,
5751 fidl::encoding::DefaultFuchsiaResourceDialect,
5752 &mut self.nullable_handles,
5753 decoder,
5754 offset + 172,
5755 _depth
5756 )?;
5757 fidl::decode!(fidl::encoding::Array<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.strings, decoder, offset + 184, _depth)?;
5758 fidl::decode!(
5759 fidl::encoding::Array<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3>,
5760 fidl::encoding::DefaultFuchsiaResourceDialect,
5761 &mut self.nullable_strings,
5762 decoder,
5763 offset + 232,
5764 _depth
5765 )?;
5766 fidl::decode!(fidl::encoding::Array<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.structs, decoder, offset + 280, _depth)?;
5767 fidl::decode!(
5768 fidl::encoding::Array<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
5769 fidl::encoding::DefaultFuchsiaResourceDialect,
5770 &mut self.nullable_structs,
5771 decoder,
5772 offset + 328,
5773 _depth
5774 )?;
5775 fidl::decode!(fidl::encoding::Array<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.unions, decoder, offset + 352, _depth)?;
5776 fidl::decode!(
5777 fidl::encoding::Array<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
5778 fidl::encoding::DefaultFuchsiaResourceDialect,
5779 &mut self.nullable_unions,
5780 decoder,
5781 offset + 400,
5782 _depth
5783 )?;
5784 fidl::decode!(
5785 fidl::encoding::Array<fidl::encoding::Array<u32, 3>, 3>,
5786 fidl::encoding::DefaultFuchsiaResourceDialect,
5787 &mut self.arrays,
5788 decoder,
5789 offset + 448,
5790 _depth
5791 )?;
5792 fidl::decode!(
5793 fidl::encoding::Array<fidl::encoding::UnboundedVector<u32>, 3>,
5794 fidl::encoding::DefaultFuchsiaResourceDialect,
5795 &mut self.vectors,
5796 decoder,
5797 offset + 488,
5798 _depth
5799 )?;
5800 fidl::decode!(
5801 fidl::encoding::Array<
5802 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
5803 3,
5804 >,
5805 fidl::encoding::DefaultFuchsiaResourceDialect,
5806 &mut self.nullable_vectors,
5807 decoder,
5808 offset + 536,
5809 _depth
5810 )?;
5811 fidl::decode!(fidl::encoding::Array<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.tables, decoder, offset + 584, _depth)?;
5812 fidl::decode!(fidl::encoding::Array<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.xunions, decoder, offset + 632, _depth)?;
5813 Ok(())
5814 }
5815 }
5816
5817 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysRequest {
5818 type Borrowed<'a> = &'a mut Self;
5819 fn take_or_borrow<'a>(
5820 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5821 ) -> Self::Borrowed<'a> {
5822 value
5823 }
5824 }
5825
5826 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysRequest {
5827 type Owned = Self;
5828
5829 #[inline(always)]
5830 fn inline_align(_context: fidl::encoding::Context) -> usize {
5831 8
5832 }
5833
5834 #[inline(always)]
5835 fn inline_size(_context: fidl::encoding::Context) -> usize {
5836 696
5837 }
5838 }
5839
5840 unsafe impl
5841 fidl::encoding::Encode<EchoEchoArraysRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
5842 for &mut EchoEchoArraysRequest
5843 {
5844 #[inline]
5845 unsafe fn encode(
5846 self,
5847 encoder: &mut fidl::encoding::Encoder<
5848 '_,
5849 fidl::encoding::DefaultFuchsiaResourceDialect,
5850 >,
5851 offset: usize,
5852 _depth: fidl::encoding::Depth,
5853 ) -> fidl::Result<()> {
5854 encoder.debug_check_bounds::<EchoEchoArraysRequest>(offset);
5855 fidl::encoding::Encode::<
5857 EchoEchoArraysRequest,
5858 fidl::encoding::DefaultFuchsiaResourceDialect,
5859 >::encode(
5860 (
5861 <ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
5862 &mut self.value,
5863 ),
5864 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
5865 &self.forward_to_server,
5866 ),
5867 ),
5868 encoder,
5869 offset,
5870 _depth,
5871 )
5872 }
5873 }
5874 unsafe impl<
5875 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
5876 T1: fidl::encoding::Encode<
5877 fidl::encoding::UnboundedString,
5878 fidl::encoding::DefaultFuchsiaResourceDialect,
5879 >,
5880 >
5881 fidl::encoding::Encode<EchoEchoArraysRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
5882 for (T0, T1)
5883 {
5884 #[inline]
5885 unsafe fn encode(
5886 self,
5887 encoder: &mut fidl::encoding::Encoder<
5888 '_,
5889 fidl::encoding::DefaultFuchsiaResourceDialect,
5890 >,
5891 offset: usize,
5892 depth: fidl::encoding::Depth,
5893 ) -> fidl::Result<()> {
5894 encoder.debug_check_bounds::<EchoEchoArraysRequest>(offset);
5895 self.0.encode(encoder, offset + 0, depth)?;
5899 self.1.encode(encoder, offset + 680, depth)?;
5900 Ok(())
5901 }
5902 }
5903
5904 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
5905 for EchoEchoArraysRequest
5906 {
5907 #[inline(always)]
5908 fn new_empty() -> Self {
5909 Self {
5910 value: fidl::new_empty!(
5911 ArraysStruct,
5912 fidl::encoding::DefaultFuchsiaResourceDialect
5913 ),
5914 forward_to_server: fidl::new_empty!(
5915 fidl::encoding::UnboundedString,
5916 fidl::encoding::DefaultFuchsiaResourceDialect
5917 ),
5918 }
5919 }
5920
5921 #[inline]
5922 unsafe fn decode(
5923 &mut self,
5924 decoder: &mut fidl::encoding::Decoder<
5925 '_,
5926 fidl::encoding::DefaultFuchsiaResourceDialect,
5927 >,
5928 offset: usize,
5929 _depth: fidl::encoding::Depth,
5930 ) -> fidl::Result<()> {
5931 decoder.debug_check_bounds::<Self>(offset);
5932 fidl::decode!(
5934 ArraysStruct,
5935 fidl::encoding::DefaultFuchsiaResourceDialect,
5936 &mut self.value,
5937 decoder,
5938 offset + 0,
5939 _depth
5940 )?;
5941 fidl::decode!(
5942 fidl::encoding::UnboundedString,
5943 fidl::encoding::DefaultFuchsiaResourceDialect,
5944 &mut self.forward_to_server,
5945 decoder,
5946 offset + 680,
5947 _depth
5948 )?;
5949 Ok(())
5950 }
5951 }
5952
5953 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysResponse {
5954 type Borrowed<'a> = &'a mut Self;
5955 fn take_or_borrow<'a>(
5956 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
5957 ) -> Self::Borrowed<'a> {
5958 value
5959 }
5960 }
5961
5962 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysResponse {
5963 type Owned = Self;
5964
5965 #[inline(always)]
5966 fn inline_align(_context: fidl::encoding::Context) -> usize {
5967 8
5968 }
5969
5970 #[inline(always)]
5971 fn inline_size(_context: fidl::encoding::Context) -> usize {
5972 680
5973 }
5974 }
5975
5976 unsafe impl
5977 fidl::encoding::Encode<
5978 EchoEchoArraysResponse,
5979 fidl::encoding::DefaultFuchsiaResourceDialect,
5980 > for &mut EchoEchoArraysResponse
5981 {
5982 #[inline]
5983 unsafe fn encode(
5984 self,
5985 encoder: &mut fidl::encoding::Encoder<
5986 '_,
5987 fidl::encoding::DefaultFuchsiaResourceDialect,
5988 >,
5989 offset: usize,
5990 _depth: fidl::encoding::Depth,
5991 ) -> fidl::Result<()> {
5992 encoder.debug_check_bounds::<EchoEchoArraysResponse>(offset);
5993 fidl::encoding::Encode::<
5995 EchoEchoArraysResponse,
5996 fidl::encoding::DefaultFuchsiaResourceDialect,
5997 >::encode(
5998 (<ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
5999 &mut self.value,
6000 ),),
6001 encoder,
6002 offset,
6003 _depth,
6004 )
6005 }
6006 }
6007 unsafe impl<
6008 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6009 >
6010 fidl::encoding::Encode<
6011 EchoEchoArraysResponse,
6012 fidl::encoding::DefaultFuchsiaResourceDialect,
6013 > for (T0,)
6014 {
6015 #[inline]
6016 unsafe fn encode(
6017 self,
6018 encoder: &mut fidl::encoding::Encoder<
6019 '_,
6020 fidl::encoding::DefaultFuchsiaResourceDialect,
6021 >,
6022 offset: usize,
6023 depth: fidl::encoding::Depth,
6024 ) -> fidl::Result<()> {
6025 encoder.debug_check_bounds::<EchoEchoArraysResponse>(offset);
6026 self.0.encode(encoder, offset + 0, depth)?;
6030 Ok(())
6031 }
6032 }
6033
6034 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6035 for EchoEchoArraysResponse
6036 {
6037 #[inline(always)]
6038 fn new_empty() -> Self {
6039 Self {
6040 value: fidl::new_empty!(
6041 ArraysStruct,
6042 fidl::encoding::DefaultFuchsiaResourceDialect
6043 ),
6044 }
6045 }
6046
6047 #[inline]
6048 unsafe fn decode(
6049 &mut self,
6050 decoder: &mut fidl::encoding::Decoder<
6051 '_,
6052 fidl::encoding::DefaultFuchsiaResourceDialect,
6053 >,
6054 offset: usize,
6055 _depth: fidl::encoding::Depth,
6056 ) -> fidl::Result<()> {
6057 decoder.debug_check_bounds::<Self>(offset);
6058 fidl::decode!(
6060 ArraysStruct,
6061 fidl::encoding::DefaultFuchsiaResourceDialect,
6062 &mut self.value,
6063 decoder,
6064 offset + 0,
6065 _depth
6066 )?;
6067 Ok(())
6068 }
6069 }
6070
6071 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysWithErrorRequest {
6072 type Borrowed<'a> = &'a mut Self;
6073 fn take_or_borrow<'a>(
6074 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6075 ) -> Self::Borrowed<'a> {
6076 value
6077 }
6078 }
6079
6080 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysWithErrorRequest {
6081 type Owned = Self;
6082
6083 #[inline(always)]
6084 fn inline_align(_context: fidl::encoding::Context) -> usize {
6085 8
6086 }
6087
6088 #[inline(always)]
6089 fn inline_size(_context: fidl::encoding::Context) -> usize {
6090 712
6091 }
6092 }
6093
6094 unsafe impl
6095 fidl::encoding::Encode<
6096 EchoEchoArraysWithErrorRequest,
6097 fidl::encoding::DefaultFuchsiaResourceDialect,
6098 > for &mut EchoEchoArraysWithErrorRequest
6099 {
6100 #[inline]
6101 unsafe fn encode(
6102 self,
6103 encoder: &mut fidl::encoding::Encoder<
6104 '_,
6105 fidl::encoding::DefaultFuchsiaResourceDialect,
6106 >,
6107 offset: usize,
6108 _depth: fidl::encoding::Depth,
6109 ) -> fidl::Result<()> {
6110 encoder.debug_check_bounds::<EchoEchoArraysWithErrorRequest>(offset);
6111 fidl::encoding::Encode::<
6113 EchoEchoArraysWithErrorRequest,
6114 fidl::encoding::DefaultFuchsiaResourceDialect,
6115 >::encode(
6116 (
6117 <ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6118 &mut self.value,
6119 ),
6120 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
6121 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6122 &self.forward_to_server,
6123 ),
6124 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
6125 ),
6126 encoder,
6127 offset,
6128 _depth,
6129 )
6130 }
6131 }
6132 unsafe impl<
6133 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6134 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
6135 T2: fidl::encoding::Encode<
6136 fidl::encoding::UnboundedString,
6137 fidl::encoding::DefaultFuchsiaResourceDialect,
6138 >,
6139 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
6140 >
6141 fidl::encoding::Encode<
6142 EchoEchoArraysWithErrorRequest,
6143 fidl::encoding::DefaultFuchsiaResourceDialect,
6144 > for (T0, T1, T2, T3)
6145 {
6146 #[inline]
6147 unsafe fn encode(
6148 self,
6149 encoder: &mut fidl::encoding::Encoder<
6150 '_,
6151 fidl::encoding::DefaultFuchsiaResourceDialect,
6152 >,
6153 offset: usize,
6154 depth: fidl::encoding::Depth,
6155 ) -> fidl::Result<()> {
6156 encoder.debug_check_bounds::<EchoEchoArraysWithErrorRequest>(offset);
6157 unsafe {
6160 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(680);
6161 (ptr as *mut u64).write_unaligned(0);
6162 }
6163 unsafe {
6164 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(704);
6165 (ptr as *mut u64).write_unaligned(0);
6166 }
6167 self.0.encode(encoder, offset + 0, depth)?;
6169 self.1.encode(encoder, offset + 680, depth)?;
6170 self.2.encode(encoder, offset + 688, depth)?;
6171 self.3.encode(encoder, offset + 704, depth)?;
6172 Ok(())
6173 }
6174 }
6175
6176 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6177 for EchoEchoArraysWithErrorRequest
6178 {
6179 #[inline(always)]
6180 fn new_empty() -> Self {
6181 Self {
6182 value: fidl::new_empty!(
6183 ArraysStruct,
6184 fidl::encoding::DefaultFuchsiaResourceDialect
6185 ),
6186 result_err: fidl::new_empty!(
6187 DefaultEnum,
6188 fidl::encoding::DefaultFuchsiaResourceDialect
6189 ),
6190 forward_to_server: fidl::new_empty!(
6191 fidl::encoding::UnboundedString,
6192 fidl::encoding::DefaultFuchsiaResourceDialect
6193 ),
6194 result_variant: fidl::new_empty!(
6195 RespondWith,
6196 fidl::encoding::DefaultFuchsiaResourceDialect
6197 ),
6198 }
6199 }
6200
6201 #[inline]
6202 unsafe fn decode(
6203 &mut self,
6204 decoder: &mut fidl::encoding::Decoder<
6205 '_,
6206 fidl::encoding::DefaultFuchsiaResourceDialect,
6207 >,
6208 offset: usize,
6209 _depth: fidl::encoding::Depth,
6210 ) -> fidl::Result<()> {
6211 decoder.debug_check_bounds::<Self>(offset);
6212 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(680) };
6214 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6215 let mask = 0xffffffff00000000u64;
6216 let maskedval = padval & mask;
6217 if maskedval != 0 {
6218 return Err(fidl::Error::NonZeroPadding {
6219 padding_start: offset + 680 + ((mask as u64).trailing_zeros() / 8) as usize,
6220 });
6221 }
6222 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(704) };
6223 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6224 let mask = 0xffffffff00000000u64;
6225 let maskedval = padval & mask;
6226 if maskedval != 0 {
6227 return Err(fidl::Error::NonZeroPadding {
6228 padding_start: offset + 704 + ((mask as u64).trailing_zeros() / 8) as usize,
6229 });
6230 }
6231 fidl::decode!(
6232 ArraysStruct,
6233 fidl::encoding::DefaultFuchsiaResourceDialect,
6234 &mut self.value,
6235 decoder,
6236 offset + 0,
6237 _depth
6238 )?;
6239 fidl::decode!(
6240 DefaultEnum,
6241 fidl::encoding::DefaultFuchsiaResourceDialect,
6242 &mut self.result_err,
6243 decoder,
6244 offset + 680,
6245 _depth
6246 )?;
6247 fidl::decode!(
6248 fidl::encoding::UnboundedString,
6249 fidl::encoding::DefaultFuchsiaResourceDialect,
6250 &mut self.forward_to_server,
6251 decoder,
6252 offset + 688,
6253 _depth
6254 )?;
6255 fidl::decode!(
6256 RespondWith,
6257 fidl::encoding::DefaultFuchsiaResourceDialect,
6258 &mut self.result_variant,
6259 decoder,
6260 offset + 704,
6261 _depth
6262 )?;
6263 Ok(())
6264 }
6265 }
6266
6267 impl fidl::encoding::ResourceTypeMarker for EchoEchoEventRequest {
6268 type Borrowed<'a> = &'a mut Self;
6269 fn take_or_borrow<'a>(
6270 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6271 ) -> Self::Borrowed<'a> {
6272 value
6273 }
6274 }
6275
6276 unsafe impl fidl::encoding::TypeMarker for EchoEchoEventRequest {
6277 type Owned = Self;
6278
6279 #[inline(always)]
6280 fn inline_align(_context: fidl::encoding::Context) -> usize {
6281 8
6282 }
6283
6284 #[inline(always)]
6285 fn inline_size(_context: fidl::encoding::Context) -> usize {
6286 2912
6287 }
6288 }
6289
6290 unsafe impl
6291 fidl::encoding::Encode<EchoEchoEventRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6292 for &mut EchoEchoEventRequest
6293 {
6294 #[inline]
6295 unsafe fn encode(
6296 self,
6297 encoder: &mut fidl::encoding::Encoder<
6298 '_,
6299 fidl::encoding::DefaultFuchsiaResourceDialect,
6300 >,
6301 offset: usize,
6302 _depth: fidl::encoding::Depth,
6303 ) -> fidl::Result<()> {
6304 encoder.debug_check_bounds::<EchoEchoEventRequest>(offset);
6305 fidl::encoding::Encode::<
6307 EchoEchoEventRequest,
6308 fidl::encoding::DefaultFuchsiaResourceDialect,
6309 >::encode(
6310 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
6311 encoder,
6312 offset,
6313 _depth,
6314 )
6315 }
6316 }
6317 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
6318 fidl::encoding::Encode<EchoEchoEventRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6319 for (T0,)
6320 {
6321 #[inline]
6322 unsafe fn encode(
6323 self,
6324 encoder: &mut fidl::encoding::Encoder<
6325 '_,
6326 fidl::encoding::DefaultFuchsiaResourceDialect,
6327 >,
6328 offset: usize,
6329 depth: fidl::encoding::Depth,
6330 ) -> fidl::Result<()> {
6331 encoder.debug_check_bounds::<EchoEchoEventRequest>(offset);
6332 self.0.encode(encoder, offset + 0, depth)?;
6336 Ok(())
6337 }
6338 }
6339
6340 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6341 for EchoEchoEventRequest
6342 {
6343 #[inline(always)]
6344 fn new_empty() -> Self {
6345 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
6346 }
6347
6348 #[inline]
6349 unsafe fn decode(
6350 &mut self,
6351 decoder: &mut fidl::encoding::Decoder<
6352 '_,
6353 fidl::encoding::DefaultFuchsiaResourceDialect,
6354 >,
6355 offset: usize,
6356 _depth: fidl::encoding::Depth,
6357 ) -> fidl::Result<()> {
6358 decoder.debug_check_bounds::<Self>(offset);
6359 fidl::decode!(
6361 Struct,
6362 fidl::encoding::DefaultFuchsiaResourceDialect,
6363 &mut self.value,
6364 decoder,
6365 offset + 0,
6366 _depth
6367 )?;
6368 Ok(())
6369 }
6370 }
6371
6372 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructNoRetValRequest {
6373 type Borrowed<'a> = &'a mut Self;
6374 fn take_or_borrow<'a>(
6375 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6376 ) -> Self::Borrowed<'a> {
6377 value
6378 }
6379 }
6380
6381 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructNoRetValRequest {
6382 type Owned = Self;
6383
6384 #[inline(always)]
6385 fn inline_align(_context: fidl::encoding::Context) -> usize {
6386 8
6387 }
6388
6389 #[inline(always)]
6390 fn inline_size(_context: fidl::encoding::Context) -> usize {
6391 2928
6392 }
6393 }
6394
6395 unsafe impl
6396 fidl::encoding::Encode<
6397 EchoEchoStructNoRetValRequest,
6398 fidl::encoding::DefaultFuchsiaResourceDialect,
6399 > for &mut EchoEchoStructNoRetValRequest
6400 {
6401 #[inline]
6402 unsafe fn encode(
6403 self,
6404 encoder: &mut fidl::encoding::Encoder<
6405 '_,
6406 fidl::encoding::DefaultFuchsiaResourceDialect,
6407 >,
6408 offset: usize,
6409 _depth: fidl::encoding::Depth,
6410 ) -> fidl::Result<()> {
6411 encoder.debug_check_bounds::<EchoEchoStructNoRetValRequest>(offset);
6412 fidl::encoding::Encode::<
6414 EchoEchoStructNoRetValRequest,
6415 fidl::encoding::DefaultFuchsiaResourceDialect,
6416 >::encode(
6417 (
6418 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6419 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6420 &self.forward_to_server,
6421 ),
6422 ),
6423 encoder,
6424 offset,
6425 _depth,
6426 )
6427 }
6428 }
6429 unsafe impl<
6430 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6431 T1: fidl::encoding::Encode<
6432 fidl::encoding::UnboundedString,
6433 fidl::encoding::DefaultFuchsiaResourceDialect,
6434 >,
6435 >
6436 fidl::encoding::Encode<
6437 EchoEchoStructNoRetValRequest,
6438 fidl::encoding::DefaultFuchsiaResourceDialect,
6439 > for (T0, T1)
6440 {
6441 #[inline]
6442 unsafe fn encode(
6443 self,
6444 encoder: &mut fidl::encoding::Encoder<
6445 '_,
6446 fidl::encoding::DefaultFuchsiaResourceDialect,
6447 >,
6448 offset: usize,
6449 depth: fidl::encoding::Depth,
6450 ) -> fidl::Result<()> {
6451 encoder.debug_check_bounds::<EchoEchoStructNoRetValRequest>(offset);
6452 self.0.encode(encoder, offset + 0, depth)?;
6456 self.1.encode(encoder, offset + 2912, depth)?;
6457 Ok(())
6458 }
6459 }
6460
6461 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6462 for EchoEchoStructNoRetValRequest
6463 {
6464 #[inline(always)]
6465 fn new_empty() -> Self {
6466 Self {
6467 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6468 forward_to_server: fidl::new_empty!(
6469 fidl::encoding::UnboundedString,
6470 fidl::encoding::DefaultFuchsiaResourceDialect
6471 ),
6472 }
6473 }
6474
6475 #[inline]
6476 unsafe fn decode(
6477 &mut self,
6478 decoder: &mut fidl::encoding::Decoder<
6479 '_,
6480 fidl::encoding::DefaultFuchsiaResourceDialect,
6481 >,
6482 offset: usize,
6483 _depth: fidl::encoding::Depth,
6484 ) -> fidl::Result<()> {
6485 decoder.debug_check_bounds::<Self>(offset);
6486 fidl::decode!(
6488 Struct,
6489 fidl::encoding::DefaultFuchsiaResourceDialect,
6490 &mut self.value,
6491 decoder,
6492 offset + 0,
6493 _depth
6494 )?;
6495 fidl::decode!(
6496 fidl::encoding::UnboundedString,
6497 fidl::encoding::DefaultFuchsiaResourceDialect,
6498 &mut self.forward_to_server,
6499 decoder,
6500 offset + 2912,
6501 _depth
6502 )?;
6503 Ok(())
6504 }
6505 }
6506
6507 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructRequest {
6508 type Borrowed<'a> = &'a mut Self;
6509 fn take_or_borrow<'a>(
6510 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6511 ) -> Self::Borrowed<'a> {
6512 value
6513 }
6514 }
6515
6516 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructRequest {
6517 type Owned = Self;
6518
6519 #[inline(always)]
6520 fn inline_align(_context: fidl::encoding::Context) -> usize {
6521 8
6522 }
6523
6524 #[inline(always)]
6525 fn inline_size(_context: fidl::encoding::Context) -> usize {
6526 2928
6527 }
6528 }
6529
6530 unsafe impl
6531 fidl::encoding::Encode<EchoEchoStructRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6532 for &mut EchoEchoStructRequest
6533 {
6534 #[inline]
6535 unsafe fn encode(
6536 self,
6537 encoder: &mut fidl::encoding::Encoder<
6538 '_,
6539 fidl::encoding::DefaultFuchsiaResourceDialect,
6540 >,
6541 offset: usize,
6542 _depth: fidl::encoding::Depth,
6543 ) -> fidl::Result<()> {
6544 encoder.debug_check_bounds::<EchoEchoStructRequest>(offset);
6545 fidl::encoding::Encode::<
6547 EchoEchoStructRequest,
6548 fidl::encoding::DefaultFuchsiaResourceDialect,
6549 >::encode(
6550 (
6551 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6552 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6553 &self.forward_to_server,
6554 ),
6555 ),
6556 encoder,
6557 offset,
6558 _depth,
6559 )
6560 }
6561 }
6562 unsafe impl<
6563 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6564 T1: fidl::encoding::Encode<
6565 fidl::encoding::UnboundedString,
6566 fidl::encoding::DefaultFuchsiaResourceDialect,
6567 >,
6568 >
6569 fidl::encoding::Encode<EchoEchoStructRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6570 for (T0, T1)
6571 {
6572 #[inline]
6573 unsafe fn encode(
6574 self,
6575 encoder: &mut fidl::encoding::Encoder<
6576 '_,
6577 fidl::encoding::DefaultFuchsiaResourceDialect,
6578 >,
6579 offset: usize,
6580 depth: fidl::encoding::Depth,
6581 ) -> fidl::Result<()> {
6582 encoder.debug_check_bounds::<EchoEchoStructRequest>(offset);
6583 self.0.encode(encoder, offset + 0, depth)?;
6587 self.1.encode(encoder, offset + 2912, depth)?;
6588 Ok(())
6589 }
6590 }
6591
6592 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6593 for EchoEchoStructRequest
6594 {
6595 #[inline(always)]
6596 fn new_empty() -> Self {
6597 Self {
6598 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6599 forward_to_server: fidl::new_empty!(
6600 fidl::encoding::UnboundedString,
6601 fidl::encoding::DefaultFuchsiaResourceDialect
6602 ),
6603 }
6604 }
6605
6606 #[inline]
6607 unsafe fn decode(
6608 &mut self,
6609 decoder: &mut fidl::encoding::Decoder<
6610 '_,
6611 fidl::encoding::DefaultFuchsiaResourceDialect,
6612 >,
6613 offset: usize,
6614 _depth: fidl::encoding::Depth,
6615 ) -> fidl::Result<()> {
6616 decoder.debug_check_bounds::<Self>(offset);
6617 fidl::decode!(
6619 Struct,
6620 fidl::encoding::DefaultFuchsiaResourceDialect,
6621 &mut self.value,
6622 decoder,
6623 offset + 0,
6624 _depth
6625 )?;
6626 fidl::decode!(
6627 fidl::encoding::UnboundedString,
6628 fidl::encoding::DefaultFuchsiaResourceDialect,
6629 &mut self.forward_to_server,
6630 decoder,
6631 offset + 2912,
6632 _depth
6633 )?;
6634 Ok(())
6635 }
6636 }
6637
6638 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructResponse {
6639 type Borrowed<'a> = &'a mut Self;
6640 fn take_or_borrow<'a>(
6641 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6642 ) -> Self::Borrowed<'a> {
6643 value
6644 }
6645 }
6646
6647 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructResponse {
6648 type Owned = Self;
6649
6650 #[inline(always)]
6651 fn inline_align(_context: fidl::encoding::Context) -> usize {
6652 8
6653 }
6654
6655 #[inline(always)]
6656 fn inline_size(_context: fidl::encoding::Context) -> usize {
6657 2912
6658 }
6659 }
6660
6661 unsafe impl
6662 fidl::encoding::Encode<
6663 EchoEchoStructResponse,
6664 fidl::encoding::DefaultFuchsiaResourceDialect,
6665 > for &mut EchoEchoStructResponse
6666 {
6667 #[inline]
6668 unsafe fn encode(
6669 self,
6670 encoder: &mut fidl::encoding::Encoder<
6671 '_,
6672 fidl::encoding::DefaultFuchsiaResourceDialect,
6673 >,
6674 offset: usize,
6675 _depth: fidl::encoding::Depth,
6676 ) -> fidl::Result<()> {
6677 encoder.debug_check_bounds::<EchoEchoStructResponse>(offset);
6678 fidl::encoding::Encode::<
6680 EchoEchoStructResponse,
6681 fidl::encoding::DefaultFuchsiaResourceDialect,
6682 >::encode(
6683 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
6684 encoder,
6685 offset,
6686 _depth,
6687 )
6688 }
6689 }
6690 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
6691 fidl::encoding::Encode<
6692 EchoEchoStructResponse,
6693 fidl::encoding::DefaultFuchsiaResourceDialect,
6694 > for (T0,)
6695 {
6696 #[inline]
6697 unsafe fn encode(
6698 self,
6699 encoder: &mut fidl::encoding::Encoder<
6700 '_,
6701 fidl::encoding::DefaultFuchsiaResourceDialect,
6702 >,
6703 offset: usize,
6704 depth: fidl::encoding::Depth,
6705 ) -> fidl::Result<()> {
6706 encoder.debug_check_bounds::<EchoEchoStructResponse>(offset);
6707 self.0.encode(encoder, offset + 0, depth)?;
6711 Ok(())
6712 }
6713 }
6714
6715 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6716 for EchoEchoStructResponse
6717 {
6718 #[inline(always)]
6719 fn new_empty() -> Self {
6720 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
6721 }
6722
6723 #[inline]
6724 unsafe fn decode(
6725 &mut self,
6726 decoder: &mut fidl::encoding::Decoder<
6727 '_,
6728 fidl::encoding::DefaultFuchsiaResourceDialect,
6729 >,
6730 offset: usize,
6731 _depth: fidl::encoding::Depth,
6732 ) -> fidl::Result<()> {
6733 decoder.debug_check_bounds::<Self>(offset);
6734 fidl::decode!(
6736 Struct,
6737 fidl::encoding::DefaultFuchsiaResourceDialect,
6738 &mut self.value,
6739 decoder,
6740 offset + 0,
6741 _depth
6742 )?;
6743 Ok(())
6744 }
6745 }
6746
6747 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructWithErrorRequest {
6748 type Borrowed<'a> = &'a mut Self;
6749 fn take_or_borrow<'a>(
6750 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6751 ) -> Self::Borrowed<'a> {
6752 value
6753 }
6754 }
6755
6756 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructWithErrorRequest {
6757 type Owned = Self;
6758
6759 #[inline(always)]
6760 fn inline_align(_context: fidl::encoding::Context) -> usize {
6761 8
6762 }
6763
6764 #[inline(always)]
6765 fn inline_size(_context: fidl::encoding::Context) -> usize {
6766 2944
6767 }
6768 }
6769
6770 unsafe impl
6771 fidl::encoding::Encode<
6772 EchoEchoStructWithErrorRequest,
6773 fidl::encoding::DefaultFuchsiaResourceDialect,
6774 > for &mut EchoEchoStructWithErrorRequest
6775 {
6776 #[inline]
6777 unsafe fn encode(
6778 self,
6779 encoder: &mut fidl::encoding::Encoder<
6780 '_,
6781 fidl::encoding::DefaultFuchsiaResourceDialect,
6782 >,
6783 offset: usize,
6784 _depth: fidl::encoding::Depth,
6785 ) -> fidl::Result<()> {
6786 encoder.debug_check_bounds::<EchoEchoStructWithErrorRequest>(offset);
6787 fidl::encoding::Encode::<
6789 EchoEchoStructWithErrorRequest,
6790 fidl::encoding::DefaultFuchsiaResourceDialect,
6791 >::encode(
6792 (
6793 <Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
6794 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
6795 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6796 &self.forward_to_server,
6797 ),
6798 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
6799 ),
6800 encoder,
6801 offset,
6802 _depth,
6803 )
6804 }
6805 }
6806 unsafe impl<
6807 T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>,
6808 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
6809 T2: fidl::encoding::Encode<
6810 fidl::encoding::UnboundedString,
6811 fidl::encoding::DefaultFuchsiaResourceDialect,
6812 >,
6813 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
6814 >
6815 fidl::encoding::Encode<
6816 EchoEchoStructWithErrorRequest,
6817 fidl::encoding::DefaultFuchsiaResourceDialect,
6818 > for (T0, T1, T2, T3)
6819 {
6820 #[inline]
6821 unsafe fn encode(
6822 self,
6823 encoder: &mut fidl::encoding::Encoder<
6824 '_,
6825 fidl::encoding::DefaultFuchsiaResourceDialect,
6826 >,
6827 offset: usize,
6828 depth: fidl::encoding::Depth,
6829 ) -> fidl::Result<()> {
6830 encoder.debug_check_bounds::<EchoEchoStructWithErrorRequest>(offset);
6831 unsafe {
6834 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2912);
6835 (ptr as *mut u64).write_unaligned(0);
6836 }
6837 unsafe {
6838 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2936);
6839 (ptr as *mut u64).write_unaligned(0);
6840 }
6841 self.0.encode(encoder, offset + 0, depth)?;
6843 self.1.encode(encoder, offset + 2912, depth)?;
6844 self.2.encode(encoder, offset + 2920, depth)?;
6845 self.3.encode(encoder, offset + 2936, depth)?;
6846 Ok(())
6847 }
6848 }
6849
6850 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
6851 for EchoEchoStructWithErrorRequest
6852 {
6853 #[inline(always)]
6854 fn new_empty() -> Self {
6855 Self {
6856 value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect),
6857 result_err: fidl::new_empty!(
6858 DefaultEnum,
6859 fidl::encoding::DefaultFuchsiaResourceDialect
6860 ),
6861 forward_to_server: fidl::new_empty!(
6862 fidl::encoding::UnboundedString,
6863 fidl::encoding::DefaultFuchsiaResourceDialect
6864 ),
6865 result_variant: fidl::new_empty!(
6866 RespondWith,
6867 fidl::encoding::DefaultFuchsiaResourceDialect
6868 ),
6869 }
6870 }
6871
6872 #[inline]
6873 unsafe fn decode(
6874 &mut self,
6875 decoder: &mut fidl::encoding::Decoder<
6876 '_,
6877 fidl::encoding::DefaultFuchsiaResourceDialect,
6878 >,
6879 offset: usize,
6880 _depth: fidl::encoding::Depth,
6881 ) -> fidl::Result<()> {
6882 decoder.debug_check_bounds::<Self>(offset);
6883 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2912) };
6885 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6886 let mask = 0xffffffff00000000u64;
6887 let maskedval = padval & mask;
6888 if maskedval != 0 {
6889 return Err(fidl::Error::NonZeroPadding {
6890 padding_start: offset + 2912 + ((mask as u64).trailing_zeros() / 8) as usize,
6891 });
6892 }
6893 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2936) };
6894 let padval = unsafe { (ptr as *const u64).read_unaligned() };
6895 let mask = 0xffffffff00000000u64;
6896 let maskedval = padval & mask;
6897 if maskedval != 0 {
6898 return Err(fidl::Error::NonZeroPadding {
6899 padding_start: offset + 2936 + ((mask as u64).trailing_zeros() / 8) as usize,
6900 });
6901 }
6902 fidl::decode!(
6903 Struct,
6904 fidl::encoding::DefaultFuchsiaResourceDialect,
6905 &mut self.value,
6906 decoder,
6907 offset + 0,
6908 _depth
6909 )?;
6910 fidl::decode!(
6911 DefaultEnum,
6912 fidl::encoding::DefaultFuchsiaResourceDialect,
6913 &mut self.result_err,
6914 decoder,
6915 offset + 2912,
6916 _depth
6917 )?;
6918 fidl::decode!(
6919 fidl::encoding::UnboundedString,
6920 fidl::encoding::DefaultFuchsiaResourceDialect,
6921 &mut self.forward_to_server,
6922 decoder,
6923 offset + 2920,
6924 _depth
6925 )?;
6926 fidl::decode!(
6927 RespondWith,
6928 fidl::encoding::DefaultFuchsiaResourceDialect,
6929 &mut self.result_variant,
6930 decoder,
6931 offset + 2936,
6932 _depth
6933 )?;
6934 Ok(())
6935 }
6936 }
6937
6938 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableRequest {
6939 type Borrowed<'a> = &'a mut Self;
6940 fn take_or_borrow<'a>(
6941 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
6942 ) -> Self::Borrowed<'a> {
6943 value
6944 }
6945 }
6946
6947 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableRequest {
6948 type Owned = Self;
6949
6950 #[inline(always)]
6951 fn inline_align(_context: fidl::encoding::Context) -> usize {
6952 8
6953 }
6954
6955 #[inline(always)]
6956 fn inline_size(_context: fidl::encoding::Context) -> usize {
6957 32
6958 }
6959 }
6960
6961 unsafe impl
6962 fidl::encoding::Encode<EchoEchoTableRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
6963 for &mut EchoEchoTableRequest
6964 {
6965 #[inline]
6966 unsafe fn encode(
6967 self,
6968 encoder: &mut fidl::encoding::Encoder<
6969 '_,
6970 fidl::encoding::DefaultFuchsiaResourceDialect,
6971 >,
6972 offset: usize,
6973 _depth: fidl::encoding::Depth,
6974 ) -> fidl::Result<()> {
6975 encoder.debug_check_bounds::<EchoEchoTableRequest>(offset);
6976 fidl::encoding::Encode::<
6978 EchoEchoTableRequest,
6979 fidl::encoding::DefaultFuchsiaResourceDialect,
6980 >::encode(
6981 (
6982 <AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
6983 &mut self.value,
6984 ),
6985 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
6986 &self.forward_to_server,
6987 ),
6988 ),
6989 encoder,
6990 offset,
6991 _depth,
6992 )
6993 }
6994 }
6995 unsafe impl<
6996 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
6997 T1: fidl::encoding::Encode<
6998 fidl::encoding::UnboundedString,
6999 fidl::encoding::DefaultFuchsiaResourceDialect,
7000 >,
7001 >
7002 fidl::encoding::Encode<EchoEchoTableRequest, fidl::encoding::DefaultFuchsiaResourceDialect>
7003 for (T0, T1)
7004 {
7005 #[inline]
7006 unsafe fn encode(
7007 self,
7008 encoder: &mut fidl::encoding::Encoder<
7009 '_,
7010 fidl::encoding::DefaultFuchsiaResourceDialect,
7011 >,
7012 offset: usize,
7013 depth: fidl::encoding::Depth,
7014 ) -> fidl::Result<()> {
7015 encoder.debug_check_bounds::<EchoEchoTableRequest>(offset);
7016 self.0.encode(encoder, offset + 0, depth)?;
7020 self.1.encode(encoder, offset + 16, depth)?;
7021 Ok(())
7022 }
7023 }
7024
7025 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7026 for EchoEchoTableRequest
7027 {
7028 #[inline(always)]
7029 fn new_empty() -> Self {
7030 Self {
7031 value: fidl::new_empty!(
7032 AllTypesTable,
7033 fidl::encoding::DefaultFuchsiaResourceDialect
7034 ),
7035 forward_to_server: fidl::new_empty!(
7036 fidl::encoding::UnboundedString,
7037 fidl::encoding::DefaultFuchsiaResourceDialect
7038 ),
7039 }
7040 }
7041
7042 #[inline]
7043 unsafe fn decode(
7044 &mut self,
7045 decoder: &mut fidl::encoding::Decoder<
7046 '_,
7047 fidl::encoding::DefaultFuchsiaResourceDialect,
7048 >,
7049 offset: usize,
7050 _depth: fidl::encoding::Depth,
7051 ) -> fidl::Result<()> {
7052 decoder.debug_check_bounds::<Self>(offset);
7053 fidl::decode!(
7055 AllTypesTable,
7056 fidl::encoding::DefaultFuchsiaResourceDialect,
7057 &mut self.value,
7058 decoder,
7059 offset + 0,
7060 _depth
7061 )?;
7062 fidl::decode!(
7063 fidl::encoding::UnboundedString,
7064 fidl::encoding::DefaultFuchsiaResourceDialect,
7065 &mut self.forward_to_server,
7066 decoder,
7067 offset + 16,
7068 _depth
7069 )?;
7070 Ok(())
7071 }
7072 }
7073
7074 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableResponse {
7075 type Borrowed<'a> = &'a mut Self;
7076 fn take_or_borrow<'a>(
7077 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7078 ) -> Self::Borrowed<'a> {
7079 value
7080 }
7081 }
7082
7083 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableResponse {
7084 type Owned = Self;
7085
7086 #[inline(always)]
7087 fn inline_align(_context: fidl::encoding::Context) -> usize {
7088 8
7089 }
7090
7091 #[inline(always)]
7092 fn inline_size(_context: fidl::encoding::Context) -> usize {
7093 16
7094 }
7095 }
7096
7097 unsafe impl
7098 fidl::encoding::Encode<EchoEchoTableResponse, fidl::encoding::DefaultFuchsiaResourceDialect>
7099 for &mut EchoEchoTableResponse
7100 {
7101 #[inline]
7102 unsafe fn encode(
7103 self,
7104 encoder: &mut fidl::encoding::Encoder<
7105 '_,
7106 fidl::encoding::DefaultFuchsiaResourceDialect,
7107 >,
7108 offset: usize,
7109 _depth: fidl::encoding::Depth,
7110 ) -> fidl::Result<()> {
7111 encoder.debug_check_bounds::<EchoEchoTableResponse>(offset);
7112 fidl::encoding::Encode::<
7114 EchoEchoTableResponse,
7115 fidl::encoding::DefaultFuchsiaResourceDialect,
7116 >::encode(
7117 (<AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7118 &mut self.value,
7119 ),),
7120 encoder,
7121 offset,
7122 _depth,
7123 )
7124 }
7125 }
7126 unsafe impl<
7127 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7128 >
7129 fidl::encoding::Encode<EchoEchoTableResponse, fidl::encoding::DefaultFuchsiaResourceDialect>
7130 for (T0,)
7131 {
7132 #[inline]
7133 unsafe fn encode(
7134 self,
7135 encoder: &mut fidl::encoding::Encoder<
7136 '_,
7137 fidl::encoding::DefaultFuchsiaResourceDialect,
7138 >,
7139 offset: usize,
7140 depth: fidl::encoding::Depth,
7141 ) -> fidl::Result<()> {
7142 encoder.debug_check_bounds::<EchoEchoTableResponse>(offset);
7143 self.0.encode(encoder, offset + 0, depth)?;
7147 Ok(())
7148 }
7149 }
7150
7151 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7152 for EchoEchoTableResponse
7153 {
7154 #[inline(always)]
7155 fn new_empty() -> Self {
7156 Self {
7157 value: fidl::new_empty!(
7158 AllTypesTable,
7159 fidl::encoding::DefaultFuchsiaResourceDialect
7160 ),
7161 }
7162 }
7163
7164 #[inline]
7165 unsafe fn decode(
7166 &mut self,
7167 decoder: &mut fidl::encoding::Decoder<
7168 '_,
7169 fidl::encoding::DefaultFuchsiaResourceDialect,
7170 >,
7171 offset: usize,
7172 _depth: fidl::encoding::Depth,
7173 ) -> fidl::Result<()> {
7174 decoder.debug_check_bounds::<Self>(offset);
7175 fidl::decode!(
7177 AllTypesTable,
7178 fidl::encoding::DefaultFuchsiaResourceDialect,
7179 &mut self.value,
7180 decoder,
7181 offset + 0,
7182 _depth
7183 )?;
7184 Ok(())
7185 }
7186 }
7187
7188 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableWithErrorRequest {
7189 type Borrowed<'a> = &'a mut Self;
7190 fn take_or_borrow<'a>(
7191 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7192 ) -> Self::Borrowed<'a> {
7193 value
7194 }
7195 }
7196
7197 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableWithErrorRequest {
7198 type Owned = Self;
7199
7200 #[inline(always)]
7201 fn inline_align(_context: fidl::encoding::Context) -> usize {
7202 8
7203 }
7204
7205 #[inline(always)]
7206 fn inline_size(_context: fidl::encoding::Context) -> usize {
7207 48
7208 }
7209 }
7210
7211 unsafe impl
7212 fidl::encoding::Encode<
7213 EchoEchoTableWithErrorRequest,
7214 fidl::encoding::DefaultFuchsiaResourceDialect,
7215 > for &mut EchoEchoTableWithErrorRequest
7216 {
7217 #[inline]
7218 unsafe fn encode(
7219 self,
7220 encoder: &mut fidl::encoding::Encoder<
7221 '_,
7222 fidl::encoding::DefaultFuchsiaResourceDialect,
7223 >,
7224 offset: usize,
7225 _depth: fidl::encoding::Depth,
7226 ) -> fidl::Result<()> {
7227 encoder.debug_check_bounds::<EchoEchoTableWithErrorRequest>(offset);
7228 fidl::encoding::Encode::<
7230 EchoEchoTableWithErrorRequest,
7231 fidl::encoding::DefaultFuchsiaResourceDialect,
7232 >::encode(
7233 (
7234 <AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7235 &mut self.value,
7236 ),
7237 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
7238 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7239 &self.forward_to_server,
7240 ),
7241 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
7242 ),
7243 encoder,
7244 offset,
7245 _depth,
7246 )
7247 }
7248 }
7249 unsafe impl<
7250 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
7251 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
7252 T2: fidl::encoding::Encode<
7253 fidl::encoding::UnboundedString,
7254 fidl::encoding::DefaultFuchsiaResourceDialect,
7255 >,
7256 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
7257 >
7258 fidl::encoding::Encode<
7259 EchoEchoTableWithErrorRequest,
7260 fidl::encoding::DefaultFuchsiaResourceDialect,
7261 > for (T0, T1, T2, T3)
7262 {
7263 #[inline]
7264 unsafe fn encode(
7265 self,
7266 encoder: &mut fidl::encoding::Encoder<
7267 '_,
7268 fidl::encoding::DefaultFuchsiaResourceDialect,
7269 >,
7270 offset: usize,
7271 depth: fidl::encoding::Depth,
7272 ) -> fidl::Result<()> {
7273 encoder.debug_check_bounds::<EchoEchoTableWithErrorRequest>(offset);
7274 unsafe {
7277 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
7278 (ptr as *mut u64).write_unaligned(0);
7279 }
7280 unsafe {
7281 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(40);
7282 (ptr as *mut u64).write_unaligned(0);
7283 }
7284 self.0.encode(encoder, offset + 0, depth)?;
7286 self.1.encode(encoder, offset + 16, depth)?;
7287 self.2.encode(encoder, offset + 24, depth)?;
7288 self.3.encode(encoder, offset + 40, depth)?;
7289 Ok(())
7290 }
7291 }
7292
7293 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7294 for EchoEchoTableWithErrorRequest
7295 {
7296 #[inline(always)]
7297 fn new_empty() -> Self {
7298 Self {
7299 value: fidl::new_empty!(
7300 AllTypesTable,
7301 fidl::encoding::DefaultFuchsiaResourceDialect
7302 ),
7303 result_err: fidl::new_empty!(
7304 DefaultEnum,
7305 fidl::encoding::DefaultFuchsiaResourceDialect
7306 ),
7307 forward_to_server: fidl::new_empty!(
7308 fidl::encoding::UnboundedString,
7309 fidl::encoding::DefaultFuchsiaResourceDialect
7310 ),
7311 result_variant: fidl::new_empty!(
7312 RespondWith,
7313 fidl::encoding::DefaultFuchsiaResourceDialect
7314 ),
7315 }
7316 }
7317
7318 #[inline]
7319 unsafe fn decode(
7320 &mut self,
7321 decoder: &mut fidl::encoding::Decoder<
7322 '_,
7323 fidl::encoding::DefaultFuchsiaResourceDialect,
7324 >,
7325 offset: usize,
7326 _depth: fidl::encoding::Depth,
7327 ) -> fidl::Result<()> {
7328 decoder.debug_check_bounds::<Self>(offset);
7329 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
7331 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7332 let mask = 0xffffffff00000000u64;
7333 let maskedval = padval & mask;
7334 if maskedval != 0 {
7335 return Err(fidl::Error::NonZeroPadding {
7336 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
7337 });
7338 }
7339 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(40) };
7340 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7341 let mask = 0xffffffff00000000u64;
7342 let maskedval = padval & mask;
7343 if maskedval != 0 {
7344 return Err(fidl::Error::NonZeroPadding {
7345 padding_start: offset + 40 + ((mask as u64).trailing_zeros() / 8) as usize,
7346 });
7347 }
7348 fidl::decode!(
7349 AllTypesTable,
7350 fidl::encoding::DefaultFuchsiaResourceDialect,
7351 &mut self.value,
7352 decoder,
7353 offset + 0,
7354 _depth
7355 )?;
7356 fidl::decode!(
7357 DefaultEnum,
7358 fidl::encoding::DefaultFuchsiaResourceDialect,
7359 &mut self.result_err,
7360 decoder,
7361 offset + 16,
7362 _depth
7363 )?;
7364 fidl::decode!(
7365 fidl::encoding::UnboundedString,
7366 fidl::encoding::DefaultFuchsiaResourceDialect,
7367 &mut self.forward_to_server,
7368 decoder,
7369 offset + 24,
7370 _depth
7371 )?;
7372 fidl::decode!(
7373 RespondWith,
7374 fidl::encoding::DefaultFuchsiaResourceDialect,
7375 &mut self.result_variant,
7376 decoder,
7377 offset + 40,
7378 _depth
7379 )?;
7380 Ok(())
7381 }
7382 }
7383
7384 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsRequest {
7385 type Borrowed<'a> = &'a mut Self;
7386 fn take_or_borrow<'a>(
7387 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7388 ) -> Self::Borrowed<'a> {
7389 value
7390 }
7391 }
7392
7393 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsRequest {
7394 type Owned = Self;
7395
7396 #[inline(always)]
7397 fn inline_align(_context: fidl::encoding::Context) -> usize {
7398 8
7399 }
7400
7401 #[inline(always)]
7402 fn inline_size(_context: fidl::encoding::Context) -> usize {
7403 432
7404 }
7405 }
7406
7407 unsafe impl
7408 fidl::encoding::Encode<
7409 EchoEchoVectorsRequest,
7410 fidl::encoding::DefaultFuchsiaResourceDialect,
7411 > for &mut EchoEchoVectorsRequest
7412 {
7413 #[inline]
7414 unsafe fn encode(
7415 self,
7416 encoder: &mut fidl::encoding::Encoder<
7417 '_,
7418 fidl::encoding::DefaultFuchsiaResourceDialect,
7419 >,
7420 offset: usize,
7421 _depth: fidl::encoding::Depth,
7422 ) -> fidl::Result<()> {
7423 encoder.debug_check_bounds::<EchoEchoVectorsRequest>(offset);
7424 fidl::encoding::Encode::<
7426 EchoEchoVectorsRequest,
7427 fidl::encoding::DefaultFuchsiaResourceDialect,
7428 >::encode(
7429 (
7430 <VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7431 &mut self.value,
7432 ),
7433 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7434 &self.forward_to_server,
7435 ),
7436 ),
7437 encoder,
7438 offset,
7439 _depth,
7440 )
7441 }
7442 }
7443 unsafe impl<
7444 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7445 T1: fidl::encoding::Encode<
7446 fidl::encoding::UnboundedString,
7447 fidl::encoding::DefaultFuchsiaResourceDialect,
7448 >,
7449 >
7450 fidl::encoding::Encode<
7451 EchoEchoVectorsRequest,
7452 fidl::encoding::DefaultFuchsiaResourceDialect,
7453 > for (T0, T1)
7454 {
7455 #[inline]
7456 unsafe fn encode(
7457 self,
7458 encoder: &mut fidl::encoding::Encoder<
7459 '_,
7460 fidl::encoding::DefaultFuchsiaResourceDialect,
7461 >,
7462 offset: usize,
7463 depth: fidl::encoding::Depth,
7464 ) -> fidl::Result<()> {
7465 encoder.debug_check_bounds::<EchoEchoVectorsRequest>(offset);
7466 self.0.encode(encoder, offset + 0, depth)?;
7470 self.1.encode(encoder, offset + 416, depth)?;
7471 Ok(())
7472 }
7473 }
7474
7475 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7476 for EchoEchoVectorsRequest
7477 {
7478 #[inline(always)]
7479 fn new_empty() -> Self {
7480 Self {
7481 value: fidl::new_empty!(
7482 VectorsStruct,
7483 fidl::encoding::DefaultFuchsiaResourceDialect
7484 ),
7485 forward_to_server: fidl::new_empty!(
7486 fidl::encoding::UnboundedString,
7487 fidl::encoding::DefaultFuchsiaResourceDialect
7488 ),
7489 }
7490 }
7491
7492 #[inline]
7493 unsafe fn decode(
7494 &mut self,
7495 decoder: &mut fidl::encoding::Decoder<
7496 '_,
7497 fidl::encoding::DefaultFuchsiaResourceDialect,
7498 >,
7499 offset: usize,
7500 _depth: fidl::encoding::Depth,
7501 ) -> fidl::Result<()> {
7502 decoder.debug_check_bounds::<Self>(offset);
7503 fidl::decode!(
7505 VectorsStruct,
7506 fidl::encoding::DefaultFuchsiaResourceDialect,
7507 &mut self.value,
7508 decoder,
7509 offset + 0,
7510 _depth
7511 )?;
7512 fidl::decode!(
7513 fidl::encoding::UnboundedString,
7514 fidl::encoding::DefaultFuchsiaResourceDialect,
7515 &mut self.forward_to_server,
7516 decoder,
7517 offset + 416,
7518 _depth
7519 )?;
7520 Ok(())
7521 }
7522 }
7523
7524 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsResponse {
7525 type Borrowed<'a> = &'a mut Self;
7526 fn take_or_borrow<'a>(
7527 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7528 ) -> Self::Borrowed<'a> {
7529 value
7530 }
7531 }
7532
7533 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsResponse {
7534 type Owned = Self;
7535
7536 #[inline(always)]
7537 fn inline_align(_context: fidl::encoding::Context) -> usize {
7538 8
7539 }
7540
7541 #[inline(always)]
7542 fn inline_size(_context: fidl::encoding::Context) -> usize {
7543 416
7544 }
7545 }
7546
7547 unsafe impl
7548 fidl::encoding::Encode<
7549 EchoEchoVectorsResponse,
7550 fidl::encoding::DefaultFuchsiaResourceDialect,
7551 > for &mut EchoEchoVectorsResponse
7552 {
7553 #[inline]
7554 unsafe fn encode(
7555 self,
7556 encoder: &mut fidl::encoding::Encoder<
7557 '_,
7558 fidl::encoding::DefaultFuchsiaResourceDialect,
7559 >,
7560 offset: usize,
7561 _depth: fidl::encoding::Depth,
7562 ) -> fidl::Result<()> {
7563 encoder.debug_check_bounds::<EchoEchoVectorsResponse>(offset);
7564 fidl::encoding::Encode::<
7566 EchoEchoVectorsResponse,
7567 fidl::encoding::DefaultFuchsiaResourceDialect,
7568 >::encode(
7569 (<VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7570 &mut self.value,
7571 ),),
7572 encoder,
7573 offset,
7574 _depth,
7575 )
7576 }
7577 }
7578 unsafe impl<
7579 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7580 >
7581 fidl::encoding::Encode<
7582 EchoEchoVectorsResponse,
7583 fidl::encoding::DefaultFuchsiaResourceDialect,
7584 > for (T0,)
7585 {
7586 #[inline]
7587 unsafe fn encode(
7588 self,
7589 encoder: &mut fidl::encoding::Encoder<
7590 '_,
7591 fidl::encoding::DefaultFuchsiaResourceDialect,
7592 >,
7593 offset: usize,
7594 depth: fidl::encoding::Depth,
7595 ) -> fidl::Result<()> {
7596 encoder.debug_check_bounds::<EchoEchoVectorsResponse>(offset);
7597 self.0.encode(encoder, offset + 0, depth)?;
7601 Ok(())
7602 }
7603 }
7604
7605 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7606 for EchoEchoVectorsResponse
7607 {
7608 #[inline(always)]
7609 fn new_empty() -> Self {
7610 Self {
7611 value: fidl::new_empty!(
7612 VectorsStruct,
7613 fidl::encoding::DefaultFuchsiaResourceDialect
7614 ),
7615 }
7616 }
7617
7618 #[inline]
7619 unsafe fn decode(
7620 &mut self,
7621 decoder: &mut fidl::encoding::Decoder<
7622 '_,
7623 fidl::encoding::DefaultFuchsiaResourceDialect,
7624 >,
7625 offset: usize,
7626 _depth: fidl::encoding::Depth,
7627 ) -> fidl::Result<()> {
7628 decoder.debug_check_bounds::<Self>(offset);
7629 fidl::decode!(
7631 VectorsStruct,
7632 fidl::encoding::DefaultFuchsiaResourceDialect,
7633 &mut self.value,
7634 decoder,
7635 offset + 0,
7636 _depth
7637 )?;
7638 Ok(())
7639 }
7640 }
7641
7642 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsWithErrorRequest {
7643 type Borrowed<'a> = &'a mut Self;
7644 fn take_or_borrow<'a>(
7645 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7646 ) -> Self::Borrowed<'a> {
7647 value
7648 }
7649 }
7650
7651 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsWithErrorRequest {
7652 type Owned = Self;
7653
7654 #[inline(always)]
7655 fn inline_align(_context: fidl::encoding::Context) -> usize {
7656 8
7657 }
7658
7659 #[inline(always)]
7660 fn inline_size(_context: fidl::encoding::Context) -> usize {
7661 448
7662 }
7663 }
7664
7665 unsafe impl
7666 fidl::encoding::Encode<
7667 EchoEchoVectorsWithErrorRequest,
7668 fidl::encoding::DefaultFuchsiaResourceDialect,
7669 > for &mut EchoEchoVectorsWithErrorRequest
7670 {
7671 #[inline]
7672 unsafe fn encode(
7673 self,
7674 encoder: &mut fidl::encoding::Encoder<
7675 '_,
7676 fidl::encoding::DefaultFuchsiaResourceDialect,
7677 >,
7678 offset: usize,
7679 _depth: fidl::encoding::Depth,
7680 ) -> fidl::Result<()> {
7681 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorRequest>(offset);
7682 fidl::encoding::Encode::<
7684 EchoEchoVectorsWithErrorRequest,
7685 fidl::encoding::DefaultFuchsiaResourceDialect,
7686 >::encode(
7687 (
7688 <VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
7689 &mut self.value,
7690 ),
7691 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
7692 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(
7693 &self.forward_to_server,
7694 ),
7695 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
7696 ),
7697 encoder,
7698 offset,
7699 _depth,
7700 )
7701 }
7702 }
7703 unsafe impl<
7704 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
7705 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
7706 T2: fidl::encoding::Encode<
7707 fidl::encoding::UnboundedString,
7708 fidl::encoding::DefaultFuchsiaResourceDialect,
7709 >,
7710 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
7711 >
7712 fidl::encoding::Encode<
7713 EchoEchoVectorsWithErrorRequest,
7714 fidl::encoding::DefaultFuchsiaResourceDialect,
7715 > for (T0, T1, T2, T3)
7716 {
7717 #[inline]
7718 unsafe fn encode(
7719 self,
7720 encoder: &mut fidl::encoding::Encoder<
7721 '_,
7722 fidl::encoding::DefaultFuchsiaResourceDialect,
7723 >,
7724 offset: usize,
7725 depth: fidl::encoding::Depth,
7726 ) -> fidl::Result<()> {
7727 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorRequest>(offset);
7728 unsafe {
7731 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(416);
7732 (ptr as *mut u64).write_unaligned(0);
7733 }
7734 unsafe {
7735 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(440);
7736 (ptr as *mut u64).write_unaligned(0);
7737 }
7738 self.0.encode(encoder, offset + 0, depth)?;
7740 self.1.encode(encoder, offset + 416, depth)?;
7741 self.2.encode(encoder, offset + 424, depth)?;
7742 self.3.encode(encoder, offset + 440, depth)?;
7743 Ok(())
7744 }
7745 }
7746
7747 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7748 for EchoEchoVectorsWithErrorRequest
7749 {
7750 #[inline(always)]
7751 fn new_empty() -> Self {
7752 Self {
7753 value: fidl::new_empty!(
7754 VectorsStruct,
7755 fidl::encoding::DefaultFuchsiaResourceDialect
7756 ),
7757 result_err: fidl::new_empty!(
7758 DefaultEnum,
7759 fidl::encoding::DefaultFuchsiaResourceDialect
7760 ),
7761 forward_to_server: fidl::new_empty!(
7762 fidl::encoding::UnboundedString,
7763 fidl::encoding::DefaultFuchsiaResourceDialect
7764 ),
7765 result_variant: fidl::new_empty!(
7766 RespondWith,
7767 fidl::encoding::DefaultFuchsiaResourceDialect
7768 ),
7769 }
7770 }
7771
7772 #[inline]
7773 unsafe fn decode(
7774 &mut self,
7775 decoder: &mut fidl::encoding::Decoder<
7776 '_,
7777 fidl::encoding::DefaultFuchsiaResourceDialect,
7778 >,
7779 offset: usize,
7780 _depth: fidl::encoding::Depth,
7781 ) -> fidl::Result<()> {
7782 decoder.debug_check_bounds::<Self>(offset);
7783 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(416) };
7785 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7786 let mask = 0xffffffff00000000u64;
7787 let maskedval = padval & mask;
7788 if maskedval != 0 {
7789 return Err(fidl::Error::NonZeroPadding {
7790 padding_start: offset + 416 + ((mask as u64).trailing_zeros() / 8) as usize,
7791 });
7792 }
7793 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(440) };
7794 let padval = unsafe { (ptr as *const u64).read_unaligned() };
7795 let mask = 0xffffffff00000000u64;
7796 let maskedval = padval & mask;
7797 if maskedval != 0 {
7798 return Err(fidl::Error::NonZeroPadding {
7799 padding_start: offset + 440 + ((mask as u64).trailing_zeros() / 8) as usize,
7800 });
7801 }
7802 fidl::decode!(
7803 VectorsStruct,
7804 fidl::encoding::DefaultFuchsiaResourceDialect,
7805 &mut self.value,
7806 decoder,
7807 offset + 0,
7808 _depth
7809 )?;
7810 fidl::decode!(
7811 DefaultEnum,
7812 fidl::encoding::DefaultFuchsiaResourceDialect,
7813 &mut self.result_err,
7814 decoder,
7815 offset + 416,
7816 _depth
7817 )?;
7818 fidl::decode!(
7819 fidl::encoding::UnboundedString,
7820 fidl::encoding::DefaultFuchsiaResourceDialect,
7821 &mut self.forward_to_server,
7822 decoder,
7823 offset + 424,
7824 _depth
7825 )?;
7826 fidl::decode!(
7827 RespondWith,
7828 fidl::encoding::DefaultFuchsiaResourceDialect,
7829 &mut self.result_variant,
7830 decoder,
7831 offset + 440,
7832 _depth
7833 )?;
7834 Ok(())
7835 }
7836 }
7837
7838 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsRequest {
7839 type Borrowed<'a> = &'a mut Self;
7840 fn take_or_borrow<'a>(
7841 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7842 ) -> Self::Borrowed<'a> {
7843 value
7844 }
7845 }
7846
7847 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsRequest {
7848 type Owned = Self;
7849
7850 #[inline(always)]
7851 fn inline_align(_context: fidl::encoding::Context) -> usize {
7852 8
7853 }
7854
7855 #[inline(always)]
7856 fn inline_size(_context: fidl::encoding::Context) -> usize {
7857 32
7858 }
7859 }
7860
7861 unsafe impl
7862 fidl::encoding::Encode<
7863 EchoEchoXunionsRequest,
7864 fidl::encoding::DefaultFuchsiaResourceDialect,
7865 > for &mut EchoEchoXunionsRequest
7866 {
7867 #[inline]
7868 unsafe fn encode(
7869 self,
7870 encoder: &mut fidl::encoding::Encoder<
7871 '_,
7872 fidl::encoding::DefaultFuchsiaResourceDialect,
7873 >,
7874 offset: usize,
7875 _depth: fidl::encoding::Depth,
7876 ) -> fidl::Result<()> {
7877 encoder.debug_check_bounds::<EchoEchoXunionsRequest>(offset);
7878 fidl::encoding::Encode::<EchoEchoXunionsRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
7880 (
7881 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
7882 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(&self.forward_to_server),
7883 ),
7884 encoder, offset, _depth
7885 )
7886 }
7887 }
7888 unsafe impl<
7889 T0: fidl::encoding::Encode<
7890 fidl::encoding::UnboundedVector<AllTypesXunion>,
7891 fidl::encoding::DefaultFuchsiaResourceDialect,
7892 >,
7893 T1: fidl::encoding::Encode<
7894 fidl::encoding::UnboundedString,
7895 fidl::encoding::DefaultFuchsiaResourceDialect,
7896 >,
7897 >
7898 fidl::encoding::Encode<
7899 EchoEchoXunionsRequest,
7900 fidl::encoding::DefaultFuchsiaResourceDialect,
7901 > for (T0, T1)
7902 {
7903 #[inline]
7904 unsafe fn encode(
7905 self,
7906 encoder: &mut fidl::encoding::Encoder<
7907 '_,
7908 fidl::encoding::DefaultFuchsiaResourceDialect,
7909 >,
7910 offset: usize,
7911 depth: fidl::encoding::Depth,
7912 ) -> fidl::Result<()> {
7913 encoder.debug_check_bounds::<EchoEchoXunionsRequest>(offset);
7914 self.0.encode(encoder, offset + 0, depth)?;
7918 self.1.encode(encoder, offset + 16, depth)?;
7919 Ok(())
7920 }
7921 }
7922
7923 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
7924 for EchoEchoXunionsRequest
7925 {
7926 #[inline(always)]
7927 fn new_empty() -> Self {
7928 Self {
7929 value: fidl::new_empty!(
7930 fidl::encoding::UnboundedVector<AllTypesXunion>,
7931 fidl::encoding::DefaultFuchsiaResourceDialect
7932 ),
7933 forward_to_server: fidl::new_empty!(
7934 fidl::encoding::UnboundedString,
7935 fidl::encoding::DefaultFuchsiaResourceDialect
7936 ),
7937 }
7938 }
7939
7940 #[inline]
7941 unsafe fn decode(
7942 &mut self,
7943 decoder: &mut fidl::encoding::Decoder<
7944 '_,
7945 fidl::encoding::DefaultFuchsiaResourceDialect,
7946 >,
7947 offset: usize,
7948 _depth: fidl::encoding::Depth,
7949 ) -> fidl::Result<()> {
7950 decoder.debug_check_bounds::<Self>(offset);
7951 fidl::decode!(
7953 fidl::encoding::UnboundedVector<AllTypesXunion>,
7954 fidl::encoding::DefaultFuchsiaResourceDialect,
7955 &mut self.value,
7956 decoder,
7957 offset + 0,
7958 _depth
7959 )?;
7960 fidl::decode!(
7961 fidl::encoding::UnboundedString,
7962 fidl::encoding::DefaultFuchsiaResourceDialect,
7963 &mut self.forward_to_server,
7964 decoder,
7965 offset + 16,
7966 _depth
7967 )?;
7968 Ok(())
7969 }
7970 }
7971
7972 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsResponse {
7973 type Borrowed<'a> = &'a mut Self;
7974 fn take_or_borrow<'a>(
7975 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
7976 ) -> Self::Borrowed<'a> {
7977 value
7978 }
7979 }
7980
7981 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsResponse {
7982 type Owned = Self;
7983
7984 #[inline(always)]
7985 fn inline_align(_context: fidl::encoding::Context) -> usize {
7986 8
7987 }
7988
7989 #[inline(always)]
7990 fn inline_size(_context: fidl::encoding::Context) -> usize {
7991 16
7992 }
7993 }
7994
7995 unsafe impl
7996 fidl::encoding::Encode<
7997 EchoEchoXunionsResponse,
7998 fidl::encoding::DefaultFuchsiaResourceDialect,
7999 > for &mut EchoEchoXunionsResponse
8000 {
8001 #[inline]
8002 unsafe fn encode(
8003 self,
8004 encoder: &mut fidl::encoding::Encoder<
8005 '_,
8006 fidl::encoding::DefaultFuchsiaResourceDialect,
8007 >,
8008 offset: usize,
8009 _depth: fidl::encoding::Depth,
8010 ) -> fidl::Result<()> {
8011 encoder.debug_check_bounds::<EchoEchoXunionsResponse>(offset);
8012 fidl::encoding::Encode::<EchoEchoXunionsResponse, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8014 (
8015 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8016 ),
8017 encoder, offset, _depth
8018 )
8019 }
8020 }
8021 unsafe impl<
8022 T0: fidl::encoding::Encode<
8023 fidl::encoding::UnboundedVector<AllTypesXunion>,
8024 fidl::encoding::DefaultFuchsiaResourceDialect,
8025 >,
8026 >
8027 fidl::encoding::Encode<
8028 EchoEchoXunionsResponse,
8029 fidl::encoding::DefaultFuchsiaResourceDialect,
8030 > for (T0,)
8031 {
8032 #[inline]
8033 unsafe fn encode(
8034 self,
8035 encoder: &mut fidl::encoding::Encoder<
8036 '_,
8037 fidl::encoding::DefaultFuchsiaResourceDialect,
8038 >,
8039 offset: usize,
8040 depth: fidl::encoding::Depth,
8041 ) -> fidl::Result<()> {
8042 encoder.debug_check_bounds::<EchoEchoXunionsResponse>(offset);
8043 self.0.encode(encoder, offset + 0, depth)?;
8047 Ok(())
8048 }
8049 }
8050
8051 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8052 for EchoEchoXunionsResponse
8053 {
8054 #[inline(always)]
8055 fn new_empty() -> Self {
8056 Self {
8057 value: fidl::new_empty!(
8058 fidl::encoding::UnboundedVector<AllTypesXunion>,
8059 fidl::encoding::DefaultFuchsiaResourceDialect
8060 ),
8061 }
8062 }
8063
8064 #[inline]
8065 unsafe fn decode(
8066 &mut self,
8067 decoder: &mut fidl::encoding::Decoder<
8068 '_,
8069 fidl::encoding::DefaultFuchsiaResourceDialect,
8070 >,
8071 offset: usize,
8072 _depth: fidl::encoding::Depth,
8073 ) -> fidl::Result<()> {
8074 decoder.debug_check_bounds::<Self>(offset);
8075 fidl::decode!(
8077 fidl::encoding::UnboundedVector<AllTypesXunion>,
8078 fidl::encoding::DefaultFuchsiaResourceDialect,
8079 &mut self.value,
8080 decoder,
8081 offset + 0,
8082 _depth
8083 )?;
8084 Ok(())
8085 }
8086 }
8087
8088 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsWithErrorRequest {
8089 type Borrowed<'a> = &'a mut Self;
8090 fn take_or_borrow<'a>(
8091 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8092 ) -> Self::Borrowed<'a> {
8093 value
8094 }
8095 }
8096
8097 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsWithErrorRequest {
8098 type Owned = Self;
8099
8100 #[inline(always)]
8101 fn inline_align(_context: fidl::encoding::Context) -> usize {
8102 8
8103 }
8104
8105 #[inline(always)]
8106 fn inline_size(_context: fidl::encoding::Context) -> usize {
8107 48
8108 }
8109 }
8110
8111 unsafe impl
8112 fidl::encoding::Encode<
8113 EchoEchoXunionsWithErrorRequest,
8114 fidl::encoding::DefaultFuchsiaResourceDialect,
8115 > for &mut EchoEchoXunionsWithErrorRequest
8116 {
8117 #[inline]
8118 unsafe fn encode(
8119 self,
8120 encoder: &mut fidl::encoding::Encoder<
8121 '_,
8122 fidl::encoding::DefaultFuchsiaResourceDialect,
8123 >,
8124 offset: usize,
8125 _depth: fidl::encoding::Depth,
8126 ) -> fidl::Result<()> {
8127 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorRequest>(offset);
8128 fidl::encoding::Encode::<EchoEchoXunionsWithErrorRequest, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8130 (
8131 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8132 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.result_err),
8133 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(&self.forward_to_server),
8134 <RespondWith as fidl::encoding::ValueTypeMarker>::borrow(&self.result_variant),
8135 ),
8136 encoder, offset, _depth
8137 )
8138 }
8139 }
8140 unsafe impl<
8141 T0: fidl::encoding::Encode<
8142 fidl::encoding::UnboundedVector<AllTypesXunion>,
8143 fidl::encoding::DefaultFuchsiaResourceDialect,
8144 >,
8145 T1: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8146 T2: fidl::encoding::Encode<
8147 fidl::encoding::UnboundedString,
8148 fidl::encoding::DefaultFuchsiaResourceDialect,
8149 >,
8150 T3: fidl::encoding::Encode<RespondWith, fidl::encoding::DefaultFuchsiaResourceDialect>,
8151 >
8152 fidl::encoding::Encode<
8153 EchoEchoXunionsWithErrorRequest,
8154 fidl::encoding::DefaultFuchsiaResourceDialect,
8155 > for (T0, T1, T2, T3)
8156 {
8157 #[inline]
8158 unsafe fn encode(
8159 self,
8160 encoder: &mut fidl::encoding::Encoder<
8161 '_,
8162 fidl::encoding::DefaultFuchsiaResourceDialect,
8163 >,
8164 offset: usize,
8165 depth: fidl::encoding::Depth,
8166 ) -> fidl::Result<()> {
8167 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorRequest>(offset);
8168 unsafe {
8171 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
8172 (ptr as *mut u64).write_unaligned(0);
8173 }
8174 unsafe {
8175 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(40);
8176 (ptr as *mut u64).write_unaligned(0);
8177 }
8178 self.0.encode(encoder, offset + 0, depth)?;
8180 self.1.encode(encoder, offset + 16, depth)?;
8181 self.2.encode(encoder, offset + 24, depth)?;
8182 self.3.encode(encoder, offset + 40, depth)?;
8183 Ok(())
8184 }
8185 }
8186
8187 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8188 for EchoEchoXunionsWithErrorRequest
8189 {
8190 #[inline(always)]
8191 fn new_empty() -> Self {
8192 Self {
8193 value: fidl::new_empty!(
8194 fidl::encoding::UnboundedVector<AllTypesXunion>,
8195 fidl::encoding::DefaultFuchsiaResourceDialect
8196 ),
8197 result_err: fidl::new_empty!(
8198 DefaultEnum,
8199 fidl::encoding::DefaultFuchsiaResourceDialect
8200 ),
8201 forward_to_server: fidl::new_empty!(
8202 fidl::encoding::UnboundedString,
8203 fidl::encoding::DefaultFuchsiaResourceDialect
8204 ),
8205 result_variant: fidl::new_empty!(
8206 RespondWith,
8207 fidl::encoding::DefaultFuchsiaResourceDialect
8208 ),
8209 }
8210 }
8211
8212 #[inline]
8213 unsafe fn decode(
8214 &mut self,
8215 decoder: &mut fidl::encoding::Decoder<
8216 '_,
8217 fidl::encoding::DefaultFuchsiaResourceDialect,
8218 >,
8219 offset: usize,
8220 _depth: fidl::encoding::Depth,
8221 ) -> fidl::Result<()> {
8222 decoder.debug_check_bounds::<Self>(offset);
8223 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
8225 let padval = unsafe { (ptr as *const u64).read_unaligned() };
8226 let mask = 0xffffffff00000000u64;
8227 let maskedval = padval & mask;
8228 if maskedval != 0 {
8229 return Err(fidl::Error::NonZeroPadding {
8230 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
8231 });
8232 }
8233 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(40) };
8234 let padval = unsafe { (ptr as *const u64).read_unaligned() };
8235 let mask = 0xffffffff00000000u64;
8236 let maskedval = padval & mask;
8237 if maskedval != 0 {
8238 return Err(fidl::Error::NonZeroPadding {
8239 padding_start: offset + 40 + ((mask as u64).trailing_zeros() / 8) as usize,
8240 });
8241 }
8242 fidl::decode!(
8243 fidl::encoding::UnboundedVector<AllTypesXunion>,
8244 fidl::encoding::DefaultFuchsiaResourceDialect,
8245 &mut self.value,
8246 decoder,
8247 offset + 0,
8248 _depth
8249 )?;
8250 fidl::decode!(
8251 DefaultEnum,
8252 fidl::encoding::DefaultFuchsiaResourceDialect,
8253 &mut self.result_err,
8254 decoder,
8255 offset + 16,
8256 _depth
8257 )?;
8258 fidl::decode!(
8259 fidl::encoding::UnboundedString,
8260 fidl::encoding::DefaultFuchsiaResourceDialect,
8261 &mut self.forward_to_server,
8262 decoder,
8263 offset + 24,
8264 _depth
8265 )?;
8266 fidl::decode!(
8267 RespondWith,
8268 fidl::encoding::DefaultFuchsiaResourceDialect,
8269 &mut self.result_variant,
8270 decoder,
8271 offset + 40,
8272 _depth
8273 )?;
8274 Ok(())
8275 }
8276 }
8277
8278 impl fidl::encoding::ResourceTypeMarker for EchoEchoArraysWithErrorResponse {
8279 type Borrowed<'a> = &'a mut Self;
8280 fn take_or_borrow<'a>(
8281 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8282 ) -> Self::Borrowed<'a> {
8283 value
8284 }
8285 }
8286
8287 unsafe impl fidl::encoding::TypeMarker for EchoEchoArraysWithErrorResponse {
8288 type Owned = Self;
8289
8290 #[inline(always)]
8291 fn inline_align(_context: fidl::encoding::Context) -> usize {
8292 8
8293 }
8294
8295 #[inline(always)]
8296 fn inline_size(_context: fidl::encoding::Context) -> usize {
8297 680
8298 }
8299 }
8300
8301 unsafe impl
8302 fidl::encoding::Encode<
8303 EchoEchoArraysWithErrorResponse,
8304 fidl::encoding::DefaultFuchsiaResourceDialect,
8305 > for &mut EchoEchoArraysWithErrorResponse
8306 {
8307 #[inline]
8308 unsafe fn encode(
8309 self,
8310 encoder: &mut fidl::encoding::Encoder<
8311 '_,
8312 fidl::encoding::DefaultFuchsiaResourceDialect,
8313 >,
8314 offset: usize,
8315 _depth: fidl::encoding::Depth,
8316 ) -> fidl::Result<()> {
8317 encoder.debug_check_bounds::<EchoEchoArraysWithErrorResponse>(offset);
8318 fidl::encoding::Encode::<
8320 EchoEchoArraysWithErrorResponse,
8321 fidl::encoding::DefaultFuchsiaResourceDialect,
8322 >::encode(
8323 (<ArraysStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8324 &mut self.value,
8325 ),),
8326 encoder,
8327 offset,
8328 _depth,
8329 )
8330 }
8331 }
8332 unsafe impl<
8333 T0: fidl::encoding::Encode<ArraysStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
8334 >
8335 fidl::encoding::Encode<
8336 EchoEchoArraysWithErrorResponse,
8337 fidl::encoding::DefaultFuchsiaResourceDialect,
8338 > for (T0,)
8339 {
8340 #[inline]
8341 unsafe fn encode(
8342 self,
8343 encoder: &mut fidl::encoding::Encoder<
8344 '_,
8345 fidl::encoding::DefaultFuchsiaResourceDialect,
8346 >,
8347 offset: usize,
8348 depth: fidl::encoding::Depth,
8349 ) -> fidl::Result<()> {
8350 encoder.debug_check_bounds::<EchoEchoArraysWithErrorResponse>(offset);
8351 self.0.encode(encoder, offset + 0, depth)?;
8355 Ok(())
8356 }
8357 }
8358
8359 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8360 for EchoEchoArraysWithErrorResponse
8361 {
8362 #[inline(always)]
8363 fn new_empty() -> Self {
8364 Self {
8365 value: fidl::new_empty!(
8366 ArraysStruct,
8367 fidl::encoding::DefaultFuchsiaResourceDialect
8368 ),
8369 }
8370 }
8371
8372 #[inline]
8373 unsafe fn decode(
8374 &mut self,
8375 decoder: &mut fidl::encoding::Decoder<
8376 '_,
8377 fidl::encoding::DefaultFuchsiaResourceDialect,
8378 >,
8379 offset: usize,
8380 _depth: fidl::encoding::Depth,
8381 ) -> fidl::Result<()> {
8382 decoder.debug_check_bounds::<Self>(offset);
8383 fidl::decode!(
8385 ArraysStruct,
8386 fidl::encoding::DefaultFuchsiaResourceDialect,
8387 &mut self.value,
8388 decoder,
8389 offset + 0,
8390 _depth
8391 )?;
8392 Ok(())
8393 }
8394 }
8395
8396 impl fidl::encoding::ResourceTypeMarker for EchoEchoStructWithErrorResponse {
8397 type Borrowed<'a> = &'a mut Self;
8398 fn take_or_borrow<'a>(
8399 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8400 ) -> Self::Borrowed<'a> {
8401 value
8402 }
8403 }
8404
8405 unsafe impl fidl::encoding::TypeMarker for EchoEchoStructWithErrorResponse {
8406 type Owned = Self;
8407
8408 #[inline(always)]
8409 fn inline_align(_context: fidl::encoding::Context) -> usize {
8410 8
8411 }
8412
8413 #[inline(always)]
8414 fn inline_size(_context: fidl::encoding::Context) -> usize {
8415 2912
8416 }
8417 }
8418
8419 unsafe impl
8420 fidl::encoding::Encode<
8421 EchoEchoStructWithErrorResponse,
8422 fidl::encoding::DefaultFuchsiaResourceDialect,
8423 > for &mut EchoEchoStructWithErrorResponse
8424 {
8425 #[inline]
8426 unsafe fn encode(
8427 self,
8428 encoder: &mut fidl::encoding::Encoder<
8429 '_,
8430 fidl::encoding::DefaultFuchsiaResourceDialect,
8431 >,
8432 offset: usize,
8433 _depth: fidl::encoding::Depth,
8434 ) -> fidl::Result<()> {
8435 encoder.debug_check_bounds::<EchoEchoStructWithErrorResponse>(offset);
8436 fidl::encoding::Encode::<
8438 EchoEchoStructWithErrorResponse,
8439 fidl::encoding::DefaultFuchsiaResourceDialect,
8440 >::encode(
8441 (<Struct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),),
8442 encoder,
8443 offset,
8444 _depth,
8445 )
8446 }
8447 }
8448 unsafe impl<T0: fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>>
8449 fidl::encoding::Encode<
8450 EchoEchoStructWithErrorResponse,
8451 fidl::encoding::DefaultFuchsiaResourceDialect,
8452 > for (T0,)
8453 {
8454 #[inline]
8455 unsafe fn encode(
8456 self,
8457 encoder: &mut fidl::encoding::Encoder<
8458 '_,
8459 fidl::encoding::DefaultFuchsiaResourceDialect,
8460 >,
8461 offset: usize,
8462 depth: fidl::encoding::Depth,
8463 ) -> fidl::Result<()> {
8464 encoder.debug_check_bounds::<EchoEchoStructWithErrorResponse>(offset);
8465 self.0.encode(encoder, offset + 0, depth)?;
8469 Ok(())
8470 }
8471 }
8472
8473 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8474 for EchoEchoStructWithErrorResponse
8475 {
8476 #[inline(always)]
8477 fn new_empty() -> Self {
8478 Self { value: fidl::new_empty!(Struct, fidl::encoding::DefaultFuchsiaResourceDialect) }
8479 }
8480
8481 #[inline]
8482 unsafe fn decode(
8483 &mut self,
8484 decoder: &mut fidl::encoding::Decoder<
8485 '_,
8486 fidl::encoding::DefaultFuchsiaResourceDialect,
8487 >,
8488 offset: usize,
8489 _depth: fidl::encoding::Depth,
8490 ) -> fidl::Result<()> {
8491 decoder.debug_check_bounds::<Self>(offset);
8492 fidl::decode!(
8494 Struct,
8495 fidl::encoding::DefaultFuchsiaResourceDialect,
8496 &mut self.value,
8497 decoder,
8498 offset + 0,
8499 _depth
8500 )?;
8501 Ok(())
8502 }
8503 }
8504
8505 impl fidl::encoding::ResourceTypeMarker for EchoEchoTableWithErrorResponse {
8506 type Borrowed<'a> = &'a mut Self;
8507 fn take_or_borrow<'a>(
8508 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8509 ) -> Self::Borrowed<'a> {
8510 value
8511 }
8512 }
8513
8514 unsafe impl fidl::encoding::TypeMarker for EchoEchoTableWithErrorResponse {
8515 type Owned = Self;
8516
8517 #[inline(always)]
8518 fn inline_align(_context: fidl::encoding::Context) -> usize {
8519 8
8520 }
8521
8522 #[inline(always)]
8523 fn inline_size(_context: fidl::encoding::Context) -> usize {
8524 16
8525 }
8526 }
8527
8528 unsafe impl
8529 fidl::encoding::Encode<
8530 EchoEchoTableWithErrorResponse,
8531 fidl::encoding::DefaultFuchsiaResourceDialect,
8532 > for &mut EchoEchoTableWithErrorResponse
8533 {
8534 #[inline]
8535 unsafe fn encode(
8536 self,
8537 encoder: &mut fidl::encoding::Encoder<
8538 '_,
8539 fidl::encoding::DefaultFuchsiaResourceDialect,
8540 >,
8541 offset: usize,
8542 _depth: fidl::encoding::Depth,
8543 ) -> fidl::Result<()> {
8544 encoder.debug_check_bounds::<EchoEchoTableWithErrorResponse>(offset);
8545 fidl::encoding::Encode::<
8547 EchoEchoTableWithErrorResponse,
8548 fidl::encoding::DefaultFuchsiaResourceDialect,
8549 >::encode(
8550 (<AllTypesTable as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8551 &mut self.value,
8552 ),),
8553 encoder,
8554 offset,
8555 _depth,
8556 )
8557 }
8558 }
8559 unsafe impl<
8560 T0: fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>,
8561 >
8562 fidl::encoding::Encode<
8563 EchoEchoTableWithErrorResponse,
8564 fidl::encoding::DefaultFuchsiaResourceDialect,
8565 > for (T0,)
8566 {
8567 #[inline]
8568 unsafe fn encode(
8569 self,
8570 encoder: &mut fidl::encoding::Encoder<
8571 '_,
8572 fidl::encoding::DefaultFuchsiaResourceDialect,
8573 >,
8574 offset: usize,
8575 depth: fidl::encoding::Depth,
8576 ) -> fidl::Result<()> {
8577 encoder.debug_check_bounds::<EchoEchoTableWithErrorResponse>(offset);
8578 self.0.encode(encoder, offset + 0, depth)?;
8582 Ok(())
8583 }
8584 }
8585
8586 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8587 for EchoEchoTableWithErrorResponse
8588 {
8589 #[inline(always)]
8590 fn new_empty() -> Self {
8591 Self {
8592 value: fidl::new_empty!(
8593 AllTypesTable,
8594 fidl::encoding::DefaultFuchsiaResourceDialect
8595 ),
8596 }
8597 }
8598
8599 #[inline]
8600 unsafe fn decode(
8601 &mut self,
8602 decoder: &mut fidl::encoding::Decoder<
8603 '_,
8604 fidl::encoding::DefaultFuchsiaResourceDialect,
8605 >,
8606 offset: usize,
8607 _depth: fidl::encoding::Depth,
8608 ) -> fidl::Result<()> {
8609 decoder.debug_check_bounds::<Self>(offset);
8610 fidl::decode!(
8612 AllTypesTable,
8613 fidl::encoding::DefaultFuchsiaResourceDialect,
8614 &mut self.value,
8615 decoder,
8616 offset + 0,
8617 _depth
8618 )?;
8619 Ok(())
8620 }
8621 }
8622
8623 impl fidl::encoding::ResourceTypeMarker for EchoEchoVectorsWithErrorResponse {
8624 type Borrowed<'a> = &'a mut Self;
8625 fn take_or_borrow<'a>(
8626 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8627 ) -> Self::Borrowed<'a> {
8628 value
8629 }
8630 }
8631
8632 unsafe impl fidl::encoding::TypeMarker for EchoEchoVectorsWithErrorResponse {
8633 type Owned = Self;
8634
8635 #[inline(always)]
8636 fn inline_align(_context: fidl::encoding::Context) -> usize {
8637 8
8638 }
8639
8640 #[inline(always)]
8641 fn inline_size(_context: fidl::encoding::Context) -> usize {
8642 416
8643 }
8644 }
8645
8646 unsafe impl
8647 fidl::encoding::Encode<
8648 EchoEchoVectorsWithErrorResponse,
8649 fidl::encoding::DefaultFuchsiaResourceDialect,
8650 > for &mut EchoEchoVectorsWithErrorResponse
8651 {
8652 #[inline]
8653 unsafe fn encode(
8654 self,
8655 encoder: &mut fidl::encoding::Encoder<
8656 '_,
8657 fidl::encoding::DefaultFuchsiaResourceDialect,
8658 >,
8659 offset: usize,
8660 _depth: fidl::encoding::Depth,
8661 ) -> fidl::Result<()> {
8662 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorResponse>(offset);
8663 fidl::encoding::Encode::<
8665 EchoEchoVectorsWithErrorResponse,
8666 fidl::encoding::DefaultFuchsiaResourceDialect,
8667 >::encode(
8668 (<VectorsStruct as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8669 &mut self.value,
8670 ),),
8671 encoder,
8672 offset,
8673 _depth,
8674 )
8675 }
8676 }
8677 unsafe impl<
8678 T0: fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>,
8679 >
8680 fidl::encoding::Encode<
8681 EchoEchoVectorsWithErrorResponse,
8682 fidl::encoding::DefaultFuchsiaResourceDialect,
8683 > for (T0,)
8684 {
8685 #[inline]
8686 unsafe fn encode(
8687 self,
8688 encoder: &mut fidl::encoding::Encoder<
8689 '_,
8690 fidl::encoding::DefaultFuchsiaResourceDialect,
8691 >,
8692 offset: usize,
8693 depth: fidl::encoding::Depth,
8694 ) -> fidl::Result<()> {
8695 encoder.debug_check_bounds::<EchoEchoVectorsWithErrorResponse>(offset);
8696 self.0.encode(encoder, offset + 0, depth)?;
8700 Ok(())
8701 }
8702 }
8703
8704 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8705 for EchoEchoVectorsWithErrorResponse
8706 {
8707 #[inline(always)]
8708 fn new_empty() -> Self {
8709 Self {
8710 value: fidl::new_empty!(
8711 VectorsStruct,
8712 fidl::encoding::DefaultFuchsiaResourceDialect
8713 ),
8714 }
8715 }
8716
8717 #[inline]
8718 unsafe fn decode(
8719 &mut self,
8720 decoder: &mut fidl::encoding::Decoder<
8721 '_,
8722 fidl::encoding::DefaultFuchsiaResourceDialect,
8723 >,
8724 offset: usize,
8725 _depth: fidl::encoding::Depth,
8726 ) -> fidl::Result<()> {
8727 decoder.debug_check_bounds::<Self>(offset);
8728 fidl::decode!(
8730 VectorsStruct,
8731 fidl::encoding::DefaultFuchsiaResourceDialect,
8732 &mut self.value,
8733 decoder,
8734 offset + 0,
8735 _depth
8736 )?;
8737 Ok(())
8738 }
8739 }
8740
8741 impl fidl::encoding::ResourceTypeMarker for EchoEchoXunionsWithErrorResponse {
8742 type Borrowed<'a> = &'a mut Self;
8743 fn take_or_borrow<'a>(
8744 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8745 ) -> Self::Borrowed<'a> {
8746 value
8747 }
8748 }
8749
8750 unsafe impl fidl::encoding::TypeMarker for EchoEchoXunionsWithErrorResponse {
8751 type Owned = Self;
8752
8753 #[inline(always)]
8754 fn inline_align(_context: fidl::encoding::Context) -> usize {
8755 8
8756 }
8757
8758 #[inline(always)]
8759 fn inline_size(_context: fidl::encoding::Context) -> usize {
8760 16
8761 }
8762 }
8763
8764 unsafe impl
8765 fidl::encoding::Encode<
8766 EchoEchoXunionsWithErrorResponse,
8767 fidl::encoding::DefaultFuchsiaResourceDialect,
8768 > for &mut EchoEchoXunionsWithErrorResponse
8769 {
8770 #[inline]
8771 unsafe fn encode(
8772 self,
8773 encoder: &mut fidl::encoding::Encoder<
8774 '_,
8775 fidl::encoding::DefaultFuchsiaResourceDialect,
8776 >,
8777 offset: usize,
8778 _depth: fidl::encoding::Depth,
8779 ) -> fidl::Result<()> {
8780 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorResponse>(offset);
8781 fidl::encoding::Encode::<EchoEchoXunionsWithErrorResponse, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8783 (
8784 <fidl::encoding::UnboundedVector<AllTypesXunion> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.value),
8785 ),
8786 encoder, offset, _depth
8787 )
8788 }
8789 }
8790 unsafe impl<
8791 T0: fidl::encoding::Encode<
8792 fidl::encoding::UnboundedVector<AllTypesXunion>,
8793 fidl::encoding::DefaultFuchsiaResourceDialect,
8794 >,
8795 >
8796 fidl::encoding::Encode<
8797 EchoEchoXunionsWithErrorResponse,
8798 fidl::encoding::DefaultFuchsiaResourceDialect,
8799 > for (T0,)
8800 {
8801 #[inline]
8802 unsafe fn encode(
8803 self,
8804 encoder: &mut fidl::encoding::Encoder<
8805 '_,
8806 fidl::encoding::DefaultFuchsiaResourceDialect,
8807 >,
8808 offset: usize,
8809 depth: fidl::encoding::Depth,
8810 ) -> fidl::Result<()> {
8811 encoder.debug_check_bounds::<EchoEchoXunionsWithErrorResponse>(offset);
8812 self.0.encode(encoder, offset + 0, depth)?;
8816 Ok(())
8817 }
8818 }
8819
8820 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
8821 for EchoEchoXunionsWithErrorResponse
8822 {
8823 #[inline(always)]
8824 fn new_empty() -> Self {
8825 Self {
8826 value: fidl::new_empty!(
8827 fidl::encoding::UnboundedVector<AllTypesXunion>,
8828 fidl::encoding::DefaultFuchsiaResourceDialect
8829 ),
8830 }
8831 }
8832
8833 #[inline]
8834 unsafe fn decode(
8835 &mut self,
8836 decoder: &mut fidl::encoding::Decoder<
8837 '_,
8838 fidl::encoding::DefaultFuchsiaResourceDialect,
8839 >,
8840 offset: usize,
8841 _depth: fidl::encoding::Depth,
8842 ) -> fidl::Result<()> {
8843 decoder.debug_check_bounds::<Self>(offset);
8844 fidl::decode!(
8846 fidl::encoding::UnboundedVector<AllTypesXunion>,
8847 fidl::encoding::DefaultFuchsiaResourceDialect,
8848 &mut self.value,
8849 decoder,
8850 offset + 0,
8851 _depth
8852 )?;
8853 Ok(())
8854 }
8855 }
8856
8857 impl fidl::encoding::ResourceTypeMarker for Struct {
8858 type Borrowed<'a> = &'a mut Self;
8859 fn take_or_borrow<'a>(
8860 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
8861 ) -> Self::Borrowed<'a> {
8862 value
8863 }
8864 }
8865
8866 unsafe impl fidl::encoding::TypeMarker for Struct {
8867 type Owned = Self;
8868
8869 #[inline(always)]
8870 fn inline_align(_context: fidl::encoding::Context) -> usize {
8871 8
8872 }
8873
8874 #[inline(always)]
8875 fn inline_size(_context: fidl::encoding::Context) -> usize {
8876 2912
8877 }
8878 }
8879
8880 unsafe impl fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>
8881 for &mut Struct
8882 {
8883 #[inline]
8884 unsafe fn encode(
8885 self,
8886 encoder: &mut fidl::encoding::Encoder<
8887 '_,
8888 fidl::encoding::DefaultFuchsiaResourceDialect,
8889 >,
8890 offset: usize,
8891 _depth: fidl::encoding::Depth,
8892 ) -> fidl::Result<()> {
8893 encoder.debug_check_bounds::<Struct>(offset);
8894 fidl::encoding::Encode::<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
8896 (
8897 <PrimitiveTypes as fidl::encoding::ValueTypeMarker>::borrow(
8898 &self.primitive_types,
8899 ),
8900 <DefaultValues as fidl::encoding::ValueTypeMarker>::borrow(
8901 &self.default_values,
8902 ),
8903 <Arrays as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8904 &mut self.arrays,
8905 ),
8906 <Arrays2d as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8907 &mut self.arrays_2d,
8908 ),
8909 <Vectors as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8910 &mut self.vectors,
8911 ),
8912 <Handles as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
8913 &mut self.handles,
8914 ),
8915 <Strings as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
8916 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(&self.default_enum),
8917 <I8Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_enum),
8918 <I16Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_enum),
8919 <I32Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_enum),
8920 <I64Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_enum),
8921 <U8Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_enum),
8922 <U16Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_enum),
8923 <U32Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_enum),
8924 <U64Enum as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_enum),
8925 <DefaultBits as fidl::encoding::ValueTypeMarker>::borrow(&self.default_bits),
8926 <U8Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_bits),
8927 <U16Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_bits),
8928 <U32Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_bits),
8929 <U64Bits as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_bits),
8930 <Structs as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
8931 <Unions as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
8932 <ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow(&self.table),
8933 <ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow(&self.xunion),
8934 <bool as fidl::encoding::ValueTypeMarker>::borrow(&self.b),
8935 ),
8936 encoder,
8937 offset,
8938 _depth,
8939 )
8940 }
8941 }
8942 unsafe impl<
8943 T0: fidl::encoding::Encode<PrimitiveTypes, fidl::encoding::DefaultFuchsiaResourceDialect>,
8944 T1: fidl::encoding::Encode<DefaultValues, fidl::encoding::DefaultFuchsiaResourceDialect>,
8945 T2: fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>,
8946 T3: fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>,
8947 T4: fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>,
8948 T5: fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>,
8949 T6: fidl::encoding::Encode<Strings, fidl::encoding::DefaultFuchsiaResourceDialect>,
8950 T7: fidl::encoding::Encode<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8951 T8: fidl::encoding::Encode<I8Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8952 T9: fidl::encoding::Encode<I16Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8953 T10: fidl::encoding::Encode<I32Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8954 T11: fidl::encoding::Encode<I64Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8955 T12: fidl::encoding::Encode<U8Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8956 T13: fidl::encoding::Encode<U16Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8957 T14: fidl::encoding::Encode<U32Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8958 T15: fidl::encoding::Encode<U64Enum, fidl::encoding::DefaultFuchsiaResourceDialect>,
8959 T16: fidl::encoding::Encode<DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8960 T17: fidl::encoding::Encode<U8Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8961 T18: fidl::encoding::Encode<U16Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8962 T19: fidl::encoding::Encode<U32Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8963 T20: fidl::encoding::Encode<U64Bits, fidl::encoding::DefaultFuchsiaResourceDialect>,
8964 T21: fidl::encoding::Encode<Structs, fidl::encoding::DefaultFuchsiaResourceDialect>,
8965 T22: fidl::encoding::Encode<Unions, fidl::encoding::DefaultFuchsiaResourceDialect>,
8966 T23: fidl::encoding::Encode<ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect>,
8967 T24: fidl::encoding::Encode<ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect>,
8968 T25: fidl::encoding::Encode<bool, fidl::encoding::DefaultFuchsiaResourceDialect>,
8969 > fidl::encoding::Encode<Struct, fidl::encoding::DefaultFuchsiaResourceDialect>
8970 for (
8971 T0,
8972 T1,
8973 T2,
8974 T3,
8975 T4,
8976 T5,
8977 T6,
8978 T7,
8979 T8,
8980 T9,
8981 T10,
8982 T11,
8983 T12,
8984 T13,
8985 T14,
8986 T15,
8987 T16,
8988 T17,
8989 T18,
8990 T19,
8991 T20,
8992 T21,
8993 T22,
8994 T23,
8995 T24,
8996 T25,
8997 )
8998 {
8999 #[inline]
9000 unsafe fn encode(
9001 self,
9002 encoder: &mut fidl::encoding::Encoder<
9003 '_,
9004 fidl::encoding::DefaultFuchsiaResourceDialect,
9005 >,
9006 offset: usize,
9007 depth: fidl::encoding::Depth,
9008 ) -> fidl::Result<()> {
9009 encoder.debug_check_bounds::<Struct>(offset);
9010 unsafe {
9013 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2640);
9014 (ptr as *mut u64).write_unaligned(0);
9015 }
9016 unsafe {
9017 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2744);
9018 (ptr as *mut u64).write_unaligned(0);
9019 }
9020 unsafe {
9021 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2752);
9022 (ptr as *mut u64).write_unaligned(0);
9023 }
9024 unsafe {
9025 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2768);
9026 (ptr as *mut u64).write_unaligned(0);
9027 }
9028 unsafe {
9029 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2784);
9030 (ptr as *mut u64).write_unaligned(0);
9031 }
9032 unsafe {
9033 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2792);
9034 (ptr as *mut u64).write_unaligned(0);
9035 }
9036 unsafe {
9037 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(2904);
9038 (ptr as *mut u64).write_unaligned(0);
9039 }
9040 self.0.encode(encoder, offset + 0, depth)?;
9042 self.1.encode(encoder, offset + 48, depth)?;
9043 self.2.encode(encoder, offset + 120, depth)?;
9044 self.3.encode(encoder, offset + 328, depth)?;
9045 self.4.encode(encoder, offset + 616, depth)?;
9046 self.5.encode(encoder, offset + 2536, depth)?;
9047 self.6.encode(encoder, offset + 2648, depth)?;
9048 self.7.encode(encoder, offset + 2744, depth)?;
9049 self.8.encode(encoder, offset + 2748, depth)?;
9050 self.9.encode(encoder, offset + 2750, depth)?;
9051 self.10.encode(encoder, offset + 2752, depth)?;
9052 self.11.encode(encoder, offset + 2760, depth)?;
9053 self.12.encode(encoder, offset + 2768, depth)?;
9054 self.13.encode(encoder, offset + 2770, depth)?;
9055 self.14.encode(encoder, offset + 2772, depth)?;
9056 self.15.encode(encoder, offset + 2776, depth)?;
9057 self.16.encode(encoder, offset + 2784, depth)?;
9058 self.17.encode(encoder, offset + 2788, depth)?;
9059 self.18.encode(encoder, offset + 2790, depth)?;
9060 self.19.encode(encoder, offset + 2792, depth)?;
9061 self.20.encode(encoder, offset + 2800, depth)?;
9062 self.21.encode(encoder, offset + 2808, depth)?;
9063 self.22.encode(encoder, offset + 2840, depth)?;
9064 self.23.encode(encoder, offset + 2872, depth)?;
9065 self.24.encode(encoder, offset + 2888, depth)?;
9066 self.25.encode(encoder, offset + 2904, depth)?;
9067 Ok(())
9068 }
9069 }
9070
9071 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Struct {
9072 #[inline(always)]
9073 fn new_empty() -> Self {
9074 Self {
9075 primitive_types: fidl::new_empty!(
9076 PrimitiveTypes,
9077 fidl::encoding::DefaultFuchsiaResourceDialect
9078 ),
9079 default_values: fidl::new_empty!(
9080 DefaultValues,
9081 fidl::encoding::DefaultFuchsiaResourceDialect
9082 ),
9083 arrays: fidl::new_empty!(Arrays, fidl::encoding::DefaultFuchsiaResourceDialect),
9084 arrays_2d: fidl::new_empty!(
9085 Arrays2d,
9086 fidl::encoding::DefaultFuchsiaResourceDialect
9087 ),
9088 vectors: fidl::new_empty!(Vectors, fidl::encoding::DefaultFuchsiaResourceDialect),
9089 handles: fidl::new_empty!(Handles, fidl::encoding::DefaultFuchsiaResourceDialect),
9090 strings: fidl::new_empty!(Strings, fidl::encoding::DefaultFuchsiaResourceDialect),
9091 default_enum: fidl::new_empty!(
9092 DefaultEnum,
9093 fidl::encoding::DefaultFuchsiaResourceDialect
9094 ),
9095 i8_enum: fidl::new_empty!(I8Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9096 i16_enum: fidl::new_empty!(I16Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9097 i32_enum: fidl::new_empty!(I32Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9098 i64_enum: fidl::new_empty!(I64Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9099 u8_enum: fidl::new_empty!(U8Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9100 u16_enum: fidl::new_empty!(U16Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9101 u32_enum: fidl::new_empty!(U32Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9102 u64_enum: fidl::new_empty!(U64Enum, fidl::encoding::DefaultFuchsiaResourceDialect),
9103 default_bits: fidl::new_empty!(
9104 DefaultBits,
9105 fidl::encoding::DefaultFuchsiaResourceDialect
9106 ),
9107 u8_bits: fidl::new_empty!(U8Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9108 u16_bits: fidl::new_empty!(U16Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9109 u32_bits: fidl::new_empty!(U32Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9110 u64_bits: fidl::new_empty!(U64Bits, fidl::encoding::DefaultFuchsiaResourceDialect),
9111 structs: fidl::new_empty!(Structs, fidl::encoding::DefaultFuchsiaResourceDialect),
9112 unions: fidl::new_empty!(Unions, fidl::encoding::DefaultFuchsiaResourceDialect),
9113 table: fidl::new_empty!(
9114 ThisIsATable,
9115 fidl::encoding::DefaultFuchsiaResourceDialect
9116 ),
9117 xunion: fidl::new_empty!(
9118 ThisIsAXunion,
9119 fidl::encoding::DefaultFuchsiaResourceDialect
9120 ),
9121 b: fidl::new_empty!(bool, fidl::encoding::DefaultFuchsiaResourceDialect),
9122 }
9123 }
9124
9125 #[inline]
9126 unsafe fn decode(
9127 &mut self,
9128 decoder: &mut fidl::encoding::Decoder<
9129 '_,
9130 fidl::encoding::DefaultFuchsiaResourceDialect,
9131 >,
9132 offset: usize,
9133 _depth: fidl::encoding::Depth,
9134 ) -> fidl::Result<()> {
9135 decoder.debug_check_bounds::<Self>(offset);
9136 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2640) };
9138 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9139 let mask = 0xffffffff00000000u64;
9140 let maskedval = padval & mask;
9141 if maskedval != 0 {
9142 return Err(fidl::Error::NonZeroPadding {
9143 padding_start: offset + 2640 + ((mask as u64).trailing_zeros() / 8) as usize,
9144 });
9145 }
9146 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2744) };
9147 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9148 let mask = 0xff0000000000u64;
9149 let maskedval = padval & mask;
9150 if maskedval != 0 {
9151 return Err(fidl::Error::NonZeroPadding {
9152 padding_start: offset + 2744 + ((mask as u64).trailing_zeros() / 8) as usize,
9153 });
9154 }
9155 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2752) };
9156 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9157 let mask = 0xffffffff00000000u64;
9158 let maskedval = padval & mask;
9159 if maskedval != 0 {
9160 return Err(fidl::Error::NonZeroPadding {
9161 padding_start: offset + 2752 + ((mask as u64).trailing_zeros() / 8) as usize,
9162 });
9163 }
9164 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2768) };
9165 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9166 let mask = 0xff00u64;
9167 let maskedval = padval & mask;
9168 if maskedval != 0 {
9169 return Err(fidl::Error::NonZeroPadding {
9170 padding_start: offset + 2768 + ((mask as u64).trailing_zeros() / 8) as usize,
9171 });
9172 }
9173 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2784) };
9174 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9175 let mask = 0xff0000000000u64;
9176 let maskedval = padval & mask;
9177 if maskedval != 0 {
9178 return Err(fidl::Error::NonZeroPadding {
9179 padding_start: offset + 2784 + ((mask as u64).trailing_zeros() / 8) as usize,
9180 });
9181 }
9182 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2792) };
9183 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9184 let mask = 0xffffffff00000000u64;
9185 let maskedval = padval & mask;
9186 if maskedval != 0 {
9187 return Err(fidl::Error::NonZeroPadding {
9188 padding_start: offset + 2792 + ((mask as u64).trailing_zeros() / 8) as usize,
9189 });
9190 }
9191 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(2904) };
9192 let padval = unsafe { (ptr as *const u64).read_unaligned() };
9193 let mask = 0xffffffffffffff00u64;
9194 let maskedval = padval & mask;
9195 if maskedval != 0 {
9196 return Err(fidl::Error::NonZeroPadding {
9197 padding_start: offset + 2904 + ((mask as u64).trailing_zeros() / 8) as usize,
9198 });
9199 }
9200 fidl::decode!(
9201 PrimitiveTypes,
9202 fidl::encoding::DefaultFuchsiaResourceDialect,
9203 &mut self.primitive_types,
9204 decoder,
9205 offset + 0,
9206 _depth
9207 )?;
9208 fidl::decode!(
9209 DefaultValues,
9210 fidl::encoding::DefaultFuchsiaResourceDialect,
9211 &mut self.default_values,
9212 decoder,
9213 offset + 48,
9214 _depth
9215 )?;
9216 fidl::decode!(
9217 Arrays,
9218 fidl::encoding::DefaultFuchsiaResourceDialect,
9219 &mut self.arrays,
9220 decoder,
9221 offset + 120,
9222 _depth
9223 )?;
9224 fidl::decode!(
9225 Arrays2d,
9226 fidl::encoding::DefaultFuchsiaResourceDialect,
9227 &mut self.arrays_2d,
9228 decoder,
9229 offset + 328,
9230 _depth
9231 )?;
9232 fidl::decode!(
9233 Vectors,
9234 fidl::encoding::DefaultFuchsiaResourceDialect,
9235 &mut self.vectors,
9236 decoder,
9237 offset + 616,
9238 _depth
9239 )?;
9240 fidl::decode!(
9241 Handles,
9242 fidl::encoding::DefaultFuchsiaResourceDialect,
9243 &mut self.handles,
9244 decoder,
9245 offset + 2536,
9246 _depth
9247 )?;
9248 fidl::decode!(
9249 Strings,
9250 fidl::encoding::DefaultFuchsiaResourceDialect,
9251 &mut self.strings,
9252 decoder,
9253 offset + 2648,
9254 _depth
9255 )?;
9256 fidl::decode!(
9257 DefaultEnum,
9258 fidl::encoding::DefaultFuchsiaResourceDialect,
9259 &mut self.default_enum,
9260 decoder,
9261 offset + 2744,
9262 _depth
9263 )?;
9264 fidl::decode!(
9265 I8Enum,
9266 fidl::encoding::DefaultFuchsiaResourceDialect,
9267 &mut self.i8_enum,
9268 decoder,
9269 offset + 2748,
9270 _depth
9271 )?;
9272 fidl::decode!(
9273 I16Enum,
9274 fidl::encoding::DefaultFuchsiaResourceDialect,
9275 &mut self.i16_enum,
9276 decoder,
9277 offset + 2750,
9278 _depth
9279 )?;
9280 fidl::decode!(
9281 I32Enum,
9282 fidl::encoding::DefaultFuchsiaResourceDialect,
9283 &mut self.i32_enum,
9284 decoder,
9285 offset + 2752,
9286 _depth
9287 )?;
9288 fidl::decode!(
9289 I64Enum,
9290 fidl::encoding::DefaultFuchsiaResourceDialect,
9291 &mut self.i64_enum,
9292 decoder,
9293 offset + 2760,
9294 _depth
9295 )?;
9296 fidl::decode!(
9297 U8Enum,
9298 fidl::encoding::DefaultFuchsiaResourceDialect,
9299 &mut self.u8_enum,
9300 decoder,
9301 offset + 2768,
9302 _depth
9303 )?;
9304 fidl::decode!(
9305 U16Enum,
9306 fidl::encoding::DefaultFuchsiaResourceDialect,
9307 &mut self.u16_enum,
9308 decoder,
9309 offset + 2770,
9310 _depth
9311 )?;
9312 fidl::decode!(
9313 U32Enum,
9314 fidl::encoding::DefaultFuchsiaResourceDialect,
9315 &mut self.u32_enum,
9316 decoder,
9317 offset + 2772,
9318 _depth
9319 )?;
9320 fidl::decode!(
9321 U64Enum,
9322 fidl::encoding::DefaultFuchsiaResourceDialect,
9323 &mut self.u64_enum,
9324 decoder,
9325 offset + 2776,
9326 _depth
9327 )?;
9328 fidl::decode!(
9329 DefaultBits,
9330 fidl::encoding::DefaultFuchsiaResourceDialect,
9331 &mut self.default_bits,
9332 decoder,
9333 offset + 2784,
9334 _depth
9335 )?;
9336 fidl::decode!(
9337 U8Bits,
9338 fidl::encoding::DefaultFuchsiaResourceDialect,
9339 &mut self.u8_bits,
9340 decoder,
9341 offset + 2788,
9342 _depth
9343 )?;
9344 fidl::decode!(
9345 U16Bits,
9346 fidl::encoding::DefaultFuchsiaResourceDialect,
9347 &mut self.u16_bits,
9348 decoder,
9349 offset + 2790,
9350 _depth
9351 )?;
9352 fidl::decode!(
9353 U32Bits,
9354 fidl::encoding::DefaultFuchsiaResourceDialect,
9355 &mut self.u32_bits,
9356 decoder,
9357 offset + 2792,
9358 _depth
9359 )?;
9360 fidl::decode!(
9361 U64Bits,
9362 fidl::encoding::DefaultFuchsiaResourceDialect,
9363 &mut self.u64_bits,
9364 decoder,
9365 offset + 2800,
9366 _depth
9367 )?;
9368 fidl::decode!(
9369 Structs,
9370 fidl::encoding::DefaultFuchsiaResourceDialect,
9371 &mut self.structs,
9372 decoder,
9373 offset + 2808,
9374 _depth
9375 )?;
9376 fidl::decode!(
9377 Unions,
9378 fidl::encoding::DefaultFuchsiaResourceDialect,
9379 &mut self.unions,
9380 decoder,
9381 offset + 2840,
9382 _depth
9383 )?;
9384 fidl::decode!(
9385 ThisIsATable,
9386 fidl::encoding::DefaultFuchsiaResourceDialect,
9387 &mut self.table,
9388 decoder,
9389 offset + 2872,
9390 _depth
9391 )?;
9392 fidl::decode!(
9393 ThisIsAXunion,
9394 fidl::encoding::DefaultFuchsiaResourceDialect,
9395 &mut self.xunion,
9396 decoder,
9397 offset + 2888,
9398 _depth
9399 )?;
9400 fidl::decode!(
9401 bool,
9402 fidl::encoding::DefaultFuchsiaResourceDialect,
9403 &mut self.b,
9404 decoder,
9405 offset + 2904,
9406 _depth
9407 )?;
9408 Ok(())
9409 }
9410 }
9411
9412 impl fidl::encoding::ResourceTypeMarker for VectorsStruct {
9413 type Borrowed<'a> = &'a mut Self;
9414 fn take_or_borrow<'a>(
9415 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
9416 ) -> Self::Borrowed<'a> {
9417 value
9418 }
9419 }
9420
9421 unsafe impl fidl::encoding::TypeMarker for VectorsStruct {
9422 type Owned = Self;
9423
9424 #[inline(always)]
9425 fn inline_align(_context: fidl::encoding::Context) -> usize {
9426 8
9427 }
9428
9429 #[inline(always)]
9430 fn inline_size(_context: fidl::encoding::Context) -> usize {
9431 416
9432 }
9433 }
9434
9435 unsafe impl fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
9436 for &mut VectorsStruct
9437 {
9438 #[inline]
9439 unsafe fn encode(
9440 self,
9441 encoder: &mut fidl::encoding::Encoder<
9442 '_,
9443 fidl::encoding::DefaultFuchsiaResourceDialect,
9444 >,
9445 offset: usize,
9446 _depth: fidl::encoding::Depth,
9447 ) -> fidl::Result<()> {
9448 encoder.debug_check_bounds::<VectorsStruct>(offset);
9449 fidl::encoding::Encode::<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
9451 (
9452 <fidl::encoding::Vector<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bools),
9453 <fidl::encoding::Vector<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int8s),
9454 <fidl::encoding::Vector<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int16s),
9455 <fidl::encoding::Vector<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int32s),
9456 <fidl::encoding::Vector<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.int64s),
9457 <fidl::encoding::Vector<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint8s),
9458 <fidl::encoding::Vector<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint16s),
9459 <fidl::encoding::Vector<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint32s),
9460 <fidl::encoding::Vector<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.uint64s),
9461 <fidl::encoding::Vector<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float32s),
9462 <fidl::encoding::Vector<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.float64s),
9463 <fidl::encoding::Vector<DefaultEnum, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.enums),
9464 <fidl::encoding::Vector<DefaultBits, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.bits),
9465 <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),
9466 <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),
9467 <fidl::encoding::Vector<fidl::encoding::UnboundedString, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.strings),
9468 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::UnboundedString>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_strings),
9469 <fidl::encoding::Vector<ThisIsAStruct, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.structs),
9470 <fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_structs),
9471 <fidl::encoding::Vector<ThisIsAUnion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.unions),
9472 <fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_unions),
9473 <fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.arrays),
9474 <fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.vectors),
9475 <fidl::encoding::Vector<fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.nullable_vectors),
9476 <fidl::encoding::Vector<ThisIsATable, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.tables),
9477 <fidl::encoding::Vector<ThisIsAXunion, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.xunions),
9478 ),
9479 encoder, offset, _depth
9480 )
9481 }
9482 }
9483 unsafe impl<
9484 T0: fidl::encoding::Encode<
9485 fidl::encoding::Vector<bool, 3>,
9486 fidl::encoding::DefaultFuchsiaResourceDialect,
9487 >,
9488 T1: fidl::encoding::Encode<
9489 fidl::encoding::Vector<i8, 3>,
9490 fidl::encoding::DefaultFuchsiaResourceDialect,
9491 >,
9492 T2: fidl::encoding::Encode<
9493 fidl::encoding::Vector<i16, 3>,
9494 fidl::encoding::DefaultFuchsiaResourceDialect,
9495 >,
9496 T3: fidl::encoding::Encode<
9497 fidl::encoding::Vector<i32, 3>,
9498 fidl::encoding::DefaultFuchsiaResourceDialect,
9499 >,
9500 T4: fidl::encoding::Encode<
9501 fidl::encoding::Vector<i64, 3>,
9502 fidl::encoding::DefaultFuchsiaResourceDialect,
9503 >,
9504 T5: fidl::encoding::Encode<
9505 fidl::encoding::Vector<u8, 3>,
9506 fidl::encoding::DefaultFuchsiaResourceDialect,
9507 >,
9508 T6: fidl::encoding::Encode<
9509 fidl::encoding::Vector<u16, 3>,
9510 fidl::encoding::DefaultFuchsiaResourceDialect,
9511 >,
9512 T7: fidl::encoding::Encode<
9513 fidl::encoding::Vector<u32, 3>,
9514 fidl::encoding::DefaultFuchsiaResourceDialect,
9515 >,
9516 T8: fidl::encoding::Encode<
9517 fidl::encoding::Vector<u64, 3>,
9518 fidl::encoding::DefaultFuchsiaResourceDialect,
9519 >,
9520 T9: fidl::encoding::Encode<
9521 fidl::encoding::Vector<f32, 3>,
9522 fidl::encoding::DefaultFuchsiaResourceDialect,
9523 >,
9524 T10: fidl::encoding::Encode<
9525 fidl::encoding::Vector<f64, 3>,
9526 fidl::encoding::DefaultFuchsiaResourceDialect,
9527 >,
9528 T11: fidl::encoding::Encode<
9529 fidl::encoding::Vector<DefaultEnum, 3>,
9530 fidl::encoding::DefaultFuchsiaResourceDialect,
9531 >,
9532 T12: fidl::encoding::Encode<
9533 fidl::encoding::Vector<DefaultBits, 3>,
9534 fidl::encoding::DefaultFuchsiaResourceDialect,
9535 >,
9536 T13: fidl::encoding::Encode<
9537 fidl::encoding::Vector<
9538 fidl::encoding::HandleType<
9539 fidl::NullableHandle,
9540 { fidl::ObjectType::NONE.into_raw() },
9541 2147483648,
9542 >,
9543 3,
9544 >,
9545 fidl::encoding::DefaultFuchsiaResourceDialect,
9546 >,
9547 T14: fidl::encoding::Encode<
9548 fidl::encoding::Vector<
9549 fidl::encoding::Optional<
9550 fidl::encoding::HandleType<
9551 fidl::NullableHandle,
9552 { fidl::ObjectType::NONE.into_raw() },
9553 2147483648,
9554 >,
9555 >,
9556 3,
9557 >,
9558 fidl::encoding::DefaultFuchsiaResourceDialect,
9559 >,
9560 T15: fidl::encoding::Encode<
9561 fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>,
9562 fidl::encoding::DefaultFuchsiaResourceDialect,
9563 >,
9564 T16: fidl::encoding::Encode<
9565 fidl::encoding::Vector<
9566 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9567 3,
9568 >,
9569 fidl::encoding::DefaultFuchsiaResourceDialect,
9570 >,
9571 T17: fidl::encoding::Encode<
9572 fidl::encoding::Vector<ThisIsAStruct, 3>,
9573 fidl::encoding::DefaultFuchsiaResourceDialect,
9574 >,
9575 T18: fidl::encoding::Encode<
9576 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9577 fidl::encoding::DefaultFuchsiaResourceDialect,
9578 >,
9579 T19: fidl::encoding::Encode<
9580 fidl::encoding::Vector<ThisIsAUnion, 3>,
9581 fidl::encoding::DefaultFuchsiaResourceDialect,
9582 >,
9583 T20: fidl::encoding::Encode<
9584 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9585 fidl::encoding::DefaultFuchsiaResourceDialect,
9586 >,
9587 T21: fidl::encoding::Encode<
9588 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9589 fidl::encoding::DefaultFuchsiaResourceDialect,
9590 >,
9591 T22: fidl::encoding::Encode<
9592 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9593 fidl::encoding::DefaultFuchsiaResourceDialect,
9594 >,
9595 T23: fidl::encoding::Encode<
9596 fidl::encoding::Vector<
9597 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9598 3,
9599 >,
9600 fidl::encoding::DefaultFuchsiaResourceDialect,
9601 >,
9602 T24: fidl::encoding::Encode<
9603 fidl::encoding::Vector<ThisIsATable, 3>,
9604 fidl::encoding::DefaultFuchsiaResourceDialect,
9605 >,
9606 T25: fidl::encoding::Encode<
9607 fidl::encoding::Vector<ThisIsAXunion, 3>,
9608 fidl::encoding::DefaultFuchsiaResourceDialect,
9609 >,
9610 > fidl::encoding::Encode<VectorsStruct, fidl::encoding::DefaultFuchsiaResourceDialect>
9611 for (
9612 T0,
9613 T1,
9614 T2,
9615 T3,
9616 T4,
9617 T5,
9618 T6,
9619 T7,
9620 T8,
9621 T9,
9622 T10,
9623 T11,
9624 T12,
9625 T13,
9626 T14,
9627 T15,
9628 T16,
9629 T17,
9630 T18,
9631 T19,
9632 T20,
9633 T21,
9634 T22,
9635 T23,
9636 T24,
9637 T25,
9638 )
9639 {
9640 #[inline]
9641 unsafe fn encode(
9642 self,
9643 encoder: &mut fidl::encoding::Encoder<
9644 '_,
9645 fidl::encoding::DefaultFuchsiaResourceDialect,
9646 >,
9647 offset: usize,
9648 depth: fidl::encoding::Depth,
9649 ) -> fidl::Result<()> {
9650 encoder.debug_check_bounds::<VectorsStruct>(offset);
9651 self.0.encode(encoder, offset + 0, depth)?;
9655 self.1.encode(encoder, offset + 16, depth)?;
9656 self.2.encode(encoder, offset + 32, depth)?;
9657 self.3.encode(encoder, offset + 48, depth)?;
9658 self.4.encode(encoder, offset + 64, depth)?;
9659 self.5.encode(encoder, offset + 80, depth)?;
9660 self.6.encode(encoder, offset + 96, depth)?;
9661 self.7.encode(encoder, offset + 112, depth)?;
9662 self.8.encode(encoder, offset + 128, depth)?;
9663 self.9.encode(encoder, offset + 144, depth)?;
9664 self.10.encode(encoder, offset + 160, depth)?;
9665 self.11.encode(encoder, offset + 176, depth)?;
9666 self.12.encode(encoder, offset + 192, depth)?;
9667 self.13.encode(encoder, offset + 208, depth)?;
9668 self.14.encode(encoder, offset + 224, depth)?;
9669 self.15.encode(encoder, offset + 240, depth)?;
9670 self.16.encode(encoder, offset + 256, depth)?;
9671 self.17.encode(encoder, offset + 272, depth)?;
9672 self.18.encode(encoder, offset + 288, depth)?;
9673 self.19.encode(encoder, offset + 304, depth)?;
9674 self.20.encode(encoder, offset + 320, depth)?;
9675 self.21.encode(encoder, offset + 336, depth)?;
9676 self.22.encode(encoder, offset + 352, depth)?;
9677 self.23.encode(encoder, offset + 368, depth)?;
9678 self.24.encode(encoder, offset + 384, depth)?;
9679 self.25.encode(encoder, offset + 400, depth)?;
9680 Ok(())
9681 }
9682 }
9683
9684 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for VectorsStruct {
9685 #[inline(always)]
9686 fn new_empty() -> Self {
9687 Self {
9688 bools: fidl::new_empty!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9689 int8s: fidl::new_empty!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9690 int16s: fidl::new_empty!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9691 int32s: fidl::new_empty!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9692 int64s: fidl::new_empty!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9693 uint8s: fidl::new_empty!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9694 uint16s: fidl::new_empty!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9695 uint32s: fidl::new_empty!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9696 uint64s: fidl::new_empty!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9697 float32s: fidl::new_empty!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9698 float64s: fidl::new_empty!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9699 enums: fidl::new_empty!(fidl::encoding::Vector<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9700 bits: fidl::new_empty!(fidl::encoding::Vector<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9701 handles: fidl::new_empty!(
9702 fidl::encoding::Vector<
9703 fidl::encoding::HandleType<
9704 fidl::NullableHandle,
9705 { fidl::ObjectType::NONE.into_raw() },
9706 2147483648,
9707 >,
9708 3,
9709 >,
9710 fidl::encoding::DefaultFuchsiaResourceDialect
9711 ),
9712 nullable_handles: fidl::new_empty!(
9713 fidl::encoding::Vector<
9714 fidl::encoding::Optional<
9715 fidl::encoding::HandleType<
9716 fidl::NullableHandle,
9717 { fidl::ObjectType::NONE.into_raw() },
9718 2147483648,
9719 >,
9720 >,
9721 3,
9722 >,
9723 fidl::encoding::DefaultFuchsiaResourceDialect
9724 ),
9725 strings: fidl::new_empty!(fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9726 nullable_strings: fidl::new_empty!(
9727 fidl::encoding::Vector<
9728 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9729 3,
9730 >,
9731 fidl::encoding::DefaultFuchsiaResourceDialect
9732 ),
9733 structs: fidl::new_empty!(fidl::encoding::Vector<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9734 nullable_structs: fidl::new_empty!(
9735 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9736 fidl::encoding::DefaultFuchsiaResourceDialect
9737 ),
9738 unions: fidl::new_empty!(fidl::encoding::Vector<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9739 nullable_unions: fidl::new_empty!(
9740 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9741 fidl::encoding::DefaultFuchsiaResourceDialect
9742 ),
9743 arrays: fidl::new_empty!(
9744 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9745 fidl::encoding::DefaultFuchsiaResourceDialect
9746 ),
9747 vectors: fidl::new_empty!(
9748 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9749 fidl::encoding::DefaultFuchsiaResourceDialect
9750 ),
9751 nullable_vectors: fidl::new_empty!(
9752 fidl::encoding::Vector<
9753 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9754 3,
9755 >,
9756 fidl::encoding::DefaultFuchsiaResourceDialect
9757 ),
9758 tables: fidl::new_empty!(fidl::encoding::Vector<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9759 xunions: fidl::new_empty!(fidl::encoding::Vector<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
9760 }
9761 }
9762
9763 #[inline]
9764 unsafe fn decode(
9765 &mut self,
9766 decoder: &mut fidl::encoding::Decoder<
9767 '_,
9768 fidl::encoding::DefaultFuchsiaResourceDialect,
9769 >,
9770 offset: usize,
9771 _depth: fidl::encoding::Depth,
9772 ) -> fidl::Result<()> {
9773 decoder.debug_check_bounds::<Self>(offset);
9774 fidl::decode!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bools, decoder, offset + 0, _depth)?;
9776 fidl::decode!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int8s, decoder, offset + 16, _depth)?;
9777 fidl::decode!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int16s, decoder, offset + 32, _depth)?;
9778 fidl::decode!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int32s, decoder, offset + 48, _depth)?;
9779 fidl::decode!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.int64s, decoder, offset + 64, _depth)?;
9780 fidl::decode!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint8s, decoder, offset + 80, _depth)?;
9781 fidl::decode!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint16s, decoder, offset + 96, _depth)?;
9782 fidl::decode!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint32s, decoder, offset + 112, _depth)?;
9783 fidl::decode!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.uint64s, decoder, offset + 128, _depth)?;
9784 fidl::decode!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float32s, decoder, offset + 144, _depth)?;
9785 fidl::decode!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.float64s, decoder, offset + 160, _depth)?;
9786 fidl::decode!(fidl::encoding::Vector<DefaultEnum, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.enums, decoder, offset + 176, _depth)?;
9787 fidl::decode!(fidl::encoding::Vector<DefaultBits, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.bits, decoder, offset + 192, _depth)?;
9788 fidl::decode!(
9789 fidl::encoding::Vector<
9790 fidl::encoding::HandleType<
9791 fidl::NullableHandle,
9792 { fidl::ObjectType::NONE.into_raw() },
9793 2147483648,
9794 >,
9795 3,
9796 >,
9797 fidl::encoding::DefaultFuchsiaResourceDialect,
9798 &mut self.handles,
9799 decoder,
9800 offset + 208,
9801 _depth
9802 )?;
9803 fidl::decode!(
9804 fidl::encoding::Vector<
9805 fidl::encoding::Optional<
9806 fidl::encoding::HandleType<
9807 fidl::NullableHandle,
9808 { fidl::ObjectType::NONE.into_raw() },
9809 2147483648,
9810 >,
9811 >,
9812 3,
9813 >,
9814 fidl::encoding::DefaultFuchsiaResourceDialect,
9815 &mut self.nullable_handles,
9816 decoder,
9817 offset + 224,
9818 _depth
9819 )?;
9820 fidl::decode!(fidl::encoding::Vector<fidl::encoding::UnboundedString, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.strings, decoder, offset + 240, _depth)?;
9821 fidl::decode!(
9822 fidl::encoding::Vector<
9823 fidl::encoding::Optional<fidl::encoding::UnboundedString>,
9824 3,
9825 >,
9826 fidl::encoding::DefaultFuchsiaResourceDialect,
9827 &mut self.nullable_strings,
9828 decoder,
9829 offset + 256,
9830 _depth
9831 )?;
9832 fidl::decode!(fidl::encoding::Vector<ThisIsAStruct, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.structs, decoder, offset + 272, _depth)?;
9833 fidl::decode!(
9834 fidl::encoding::Vector<fidl::encoding::Boxed<ThisIsAStruct>, 3>,
9835 fidl::encoding::DefaultFuchsiaResourceDialect,
9836 &mut self.nullable_structs,
9837 decoder,
9838 offset + 288,
9839 _depth
9840 )?;
9841 fidl::decode!(fidl::encoding::Vector<ThisIsAUnion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.unions, decoder, offset + 304, _depth)?;
9842 fidl::decode!(
9843 fidl::encoding::Vector<fidl::encoding::OptionalUnion<ThisIsAUnion>, 3>,
9844 fidl::encoding::DefaultFuchsiaResourceDialect,
9845 &mut self.nullable_unions,
9846 decoder,
9847 offset + 320,
9848 _depth
9849 )?;
9850 fidl::decode!(
9851 fidl::encoding::Vector<fidl::encoding::Array<u32, 3>, 3>,
9852 fidl::encoding::DefaultFuchsiaResourceDialect,
9853 &mut self.arrays,
9854 decoder,
9855 offset + 336,
9856 _depth
9857 )?;
9858 fidl::decode!(
9859 fidl::encoding::Vector<fidl::encoding::UnboundedVector<u32>, 3>,
9860 fidl::encoding::DefaultFuchsiaResourceDialect,
9861 &mut self.vectors,
9862 decoder,
9863 offset + 352,
9864 _depth
9865 )?;
9866 fidl::decode!(
9867 fidl::encoding::Vector<
9868 fidl::encoding::Optional<fidl::encoding::UnboundedVector<u32>>,
9869 3,
9870 >,
9871 fidl::encoding::DefaultFuchsiaResourceDialect,
9872 &mut self.nullable_vectors,
9873 decoder,
9874 offset + 368,
9875 _depth
9876 )?;
9877 fidl::decode!(fidl::encoding::Vector<ThisIsATable, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.tables, decoder, offset + 384, _depth)?;
9878 fidl::decode!(fidl::encoding::Vector<ThisIsAXunion, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.xunions, decoder, offset + 400, _depth)?;
9879 Ok(())
9880 }
9881 }
9882
9883 impl fidl::encoding::ResourceTypeMarker for Arrays {
9884 type Borrowed<'a> = &'a mut Self;
9885 fn take_or_borrow<'a>(
9886 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
9887 ) -> Self::Borrowed<'a> {
9888 value
9889 }
9890 }
9891
9892 unsafe impl fidl::encoding::TypeMarker for Arrays {
9893 type Owned = Self;
9894
9895 #[inline(always)]
9896 fn inline_align(_context: fidl::encoding::Context) -> usize {
9897 8
9898 }
9899
9900 #[inline(always)]
9901 fn inline_size(_context: fidl::encoding::Context) -> usize {
9902 208
9903 }
9904 }
9905
9906 unsafe impl fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>
9907 for &mut Arrays
9908 {
9909 #[inline]
9910 unsafe fn encode(
9911 self,
9912 encoder: &mut fidl::encoding::Encoder<
9913 '_,
9914 fidl::encoding::DefaultFuchsiaResourceDialect,
9915 >,
9916 offset: usize,
9917 _depth: fidl::encoding::Depth,
9918 ) -> fidl::Result<()> {
9919 encoder.debug_check_bounds::<Arrays>(offset);
9920 fidl::encoding::Encode::<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
9922 (
9923 <fidl::encoding::Array<bool, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9924 &self.b_0,
9925 ),
9926 <fidl::encoding::Array<i8, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9927 &self.i8_0,
9928 ),
9929 <fidl::encoding::Array<i16, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9930 &self.i16_0,
9931 ),
9932 <fidl::encoding::Array<i32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9933 &self.i32_0,
9934 ),
9935 <fidl::encoding::Array<i64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9936 &self.i64_0,
9937 ),
9938 <fidl::encoding::Array<u8, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9939 &self.u8_0,
9940 ),
9941 <fidl::encoding::Array<u16, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9942 &self.u16_0,
9943 ),
9944 <fidl::encoding::Array<u32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9945 &self.u32_0,
9946 ),
9947 <fidl::encoding::Array<u64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9948 &self.u64_0,
9949 ),
9950 <fidl::encoding::Array<f32, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9951 &self.f32_0,
9952 ),
9953 <fidl::encoding::Array<f64, 1> as fidl::encoding::ValueTypeMarker>::borrow(
9954 &self.f64_0,
9955 ),
9956 <fidl::encoding::Array<
9957 fidl::encoding::HandleType<
9958 fidl::NullableHandle,
9959 { fidl::ObjectType::NONE.into_raw() },
9960 2147483648,
9961 >,
9962 1,
9963 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
9964 &mut self.handle_0
9965 ),
9966 <fidl::encoding::Array<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9967 &self.b_1,
9968 ),
9969 <fidl::encoding::Array<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9970 &self.i8_1,
9971 ),
9972 <fidl::encoding::Array<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9973 &self.i16_1,
9974 ),
9975 <fidl::encoding::Array<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9976 &self.i32_1,
9977 ),
9978 <fidl::encoding::Array<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9979 &self.i64_1,
9980 ),
9981 <fidl::encoding::Array<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9982 &self.u8_1,
9983 ),
9984 <fidl::encoding::Array<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9985 &self.u16_1,
9986 ),
9987 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9988 &self.u32_1,
9989 ),
9990 <fidl::encoding::Array<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9991 &self.u64_1,
9992 ),
9993 <fidl::encoding::Array<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9994 &self.f32_1,
9995 ),
9996 <fidl::encoding::Array<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(
9997 &self.f64_1,
9998 ),
9999 <fidl::encoding::Array<
10000 fidl::encoding::HandleType<
10001 fidl::NullableHandle,
10002 { fidl::ObjectType::NONE.into_raw() },
10003 2147483648,
10004 >,
10005 3,
10006 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10007 &mut self.handle_1
10008 ),
10009 ),
10010 encoder,
10011 offset,
10012 _depth,
10013 )
10014 }
10015 }
10016 unsafe impl<
10017 T0: fidl::encoding::Encode<
10018 fidl::encoding::Array<bool, 1>,
10019 fidl::encoding::DefaultFuchsiaResourceDialect,
10020 >,
10021 T1: fidl::encoding::Encode<
10022 fidl::encoding::Array<i8, 1>,
10023 fidl::encoding::DefaultFuchsiaResourceDialect,
10024 >,
10025 T2: fidl::encoding::Encode<
10026 fidl::encoding::Array<i16, 1>,
10027 fidl::encoding::DefaultFuchsiaResourceDialect,
10028 >,
10029 T3: fidl::encoding::Encode<
10030 fidl::encoding::Array<i32, 1>,
10031 fidl::encoding::DefaultFuchsiaResourceDialect,
10032 >,
10033 T4: fidl::encoding::Encode<
10034 fidl::encoding::Array<i64, 1>,
10035 fidl::encoding::DefaultFuchsiaResourceDialect,
10036 >,
10037 T5: fidl::encoding::Encode<
10038 fidl::encoding::Array<u8, 1>,
10039 fidl::encoding::DefaultFuchsiaResourceDialect,
10040 >,
10041 T6: fidl::encoding::Encode<
10042 fidl::encoding::Array<u16, 1>,
10043 fidl::encoding::DefaultFuchsiaResourceDialect,
10044 >,
10045 T7: fidl::encoding::Encode<
10046 fidl::encoding::Array<u32, 1>,
10047 fidl::encoding::DefaultFuchsiaResourceDialect,
10048 >,
10049 T8: fidl::encoding::Encode<
10050 fidl::encoding::Array<u64, 1>,
10051 fidl::encoding::DefaultFuchsiaResourceDialect,
10052 >,
10053 T9: fidl::encoding::Encode<
10054 fidl::encoding::Array<f32, 1>,
10055 fidl::encoding::DefaultFuchsiaResourceDialect,
10056 >,
10057 T10: fidl::encoding::Encode<
10058 fidl::encoding::Array<f64, 1>,
10059 fidl::encoding::DefaultFuchsiaResourceDialect,
10060 >,
10061 T11: fidl::encoding::Encode<
10062 fidl::encoding::Array<
10063 fidl::encoding::HandleType<
10064 fidl::NullableHandle,
10065 { fidl::ObjectType::NONE.into_raw() },
10066 2147483648,
10067 >,
10068 1,
10069 >,
10070 fidl::encoding::DefaultFuchsiaResourceDialect,
10071 >,
10072 T12: fidl::encoding::Encode<
10073 fidl::encoding::Array<bool, 3>,
10074 fidl::encoding::DefaultFuchsiaResourceDialect,
10075 >,
10076 T13: fidl::encoding::Encode<
10077 fidl::encoding::Array<i8, 3>,
10078 fidl::encoding::DefaultFuchsiaResourceDialect,
10079 >,
10080 T14: fidl::encoding::Encode<
10081 fidl::encoding::Array<i16, 3>,
10082 fidl::encoding::DefaultFuchsiaResourceDialect,
10083 >,
10084 T15: fidl::encoding::Encode<
10085 fidl::encoding::Array<i32, 3>,
10086 fidl::encoding::DefaultFuchsiaResourceDialect,
10087 >,
10088 T16: fidl::encoding::Encode<
10089 fidl::encoding::Array<i64, 3>,
10090 fidl::encoding::DefaultFuchsiaResourceDialect,
10091 >,
10092 T17: fidl::encoding::Encode<
10093 fidl::encoding::Array<u8, 3>,
10094 fidl::encoding::DefaultFuchsiaResourceDialect,
10095 >,
10096 T18: fidl::encoding::Encode<
10097 fidl::encoding::Array<u16, 3>,
10098 fidl::encoding::DefaultFuchsiaResourceDialect,
10099 >,
10100 T19: fidl::encoding::Encode<
10101 fidl::encoding::Array<u32, 3>,
10102 fidl::encoding::DefaultFuchsiaResourceDialect,
10103 >,
10104 T20: fidl::encoding::Encode<
10105 fidl::encoding::Array<u64, 3>,
10106 fidl::encoding::DefaultFuchsiaResourceDialect,
10107 >,
10108 T21: fidl::encoding::Encode<
10109 fidl::encoding::Array<f32, 3>,
10110 fidl::encoding::DefaultFuchsiaResourceDialect,
10111 >,
10112 T22: fidl::encoding::Encode<
10113 fidl::encoding::Array<f64, 3>,
10114 fidl::encoding::DefaultFuchsiaResourceDialect,
10115 >,
10116 T23: fidl::encoding::Encode<
10117 fidl::encoding::Array<
10118 fidl::encoding::HandleType<
10119 fidl::NullableHandle,
10120 { fidl::ObjectType::NONE.into_raw() },
10121 2147483648,
10122 >,
10123 3,
10124 >,
10125 fidl::encoding::DefaultFuchsiaResourceDialect,
10126 >,
10127 > fidl::encoding::Encode<Arrays, fidl::encoding::DefaultFuchsiaResourceDialect>
10128 for (
10129 T0,
10130 T1,
10131 T2,
10132 T3,
10133 T4,
10134 T5,
10135 T6,
10136 T7,
10137 T8,
10138 T9,
10139 T10,
10140 T11,
10141 T12,
10142 T13,
10143 T14,
10144 T15,
10145 T16,
10146 T17,
10147 T18,
10148 T19,
10149 T20,
10150 T21,
10151 T22,
10152 T23,
10153 )
10154 {
10155 #[inline]
10156 unsafe fn encode(
10157 self,
10158 encoder: &mut fidl::encoding::Encoder<
10159 '_,
10160 fidl::encoding::DefaultFuchsiaResourceDialect,
10161 >,
10162 offset: usize,
10163 depth: fidl::encoding::Depth,
10164 ) -> fidl::Result<()> {
10165 encoder.debug_check_bounds::<Arrays>(offset);
10166 unsafe {
10169 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(16);
10170 (ptr as *mut u64).write_unaligned(0);
10171 }
10172 unsafe {
10173 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(32);
10174 (ptr as *mut u64).write_unaligned(0);
10175 }
10176 unsafe {
10177 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(72);
10178 (ptr as *mut u64).write_unaligned(0);
10179 }
10180 unsafe {
10181 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(104);
10182 (ptr as *mut u64).write_unaligned(0);
10183 }
10184 unsafe {
10185 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(112);
10186 (ptr as *mut u64).write_unaligned(0);
10187 }
10188 unsafe {
10189 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(160);
10190 (ptr as *mut u64).write_unaligned(0);
10191 }
10192 unsafe {
10193 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(200);
10194 (ptr as *mut u64).write_unaligned(0);
10195 }
10196 self.0.encode(encoder, offset + 0, depth)?;
10198 self.1.encode(encoder, offset + 1, depth)?;
10199 self.2.encode(encoder, offset + 2, depth)?;
10200 self.3.encode(encoder, offset + 4, depth)?;
10201 self.4.encode(encoder, offset + 8, depth)?;
10202 self.5.encode(encoder, offset + 16, depth)?;
10203 self.6.encode(encoder, offset + 18, depth)?;
10204 self.7.encode(encoder, offset + 20, depth)?;
10205 self.8.encode(encoder, offset + 24, depth)?;
10206 self.9.encode(encoder, offset + 32, depth)?;
10207 self.10.encode(encoder, offset + 40, depth)?;
10208 self.11.encode(encoder, offset + 48, depth)?;
10209 self.12.encode(encoder, offset + 52, depth)?;
10210 self.13.encode(encoder, offset + 55, depth)?;
10211 self.14.encode(encoder, offset + 58, depth)?;
10212 self.15.encode(encoder, offset + 64, depth)?;
10213 self.16.encode(encoder, offset + 80, depth)?;
10214 self.17.encode(encoder, offset + 104, depth)?;
10215 self.18.encode(encoder, offset + 108, depth)?;
10216 self.19.encode(encoder, offset + 116, depth)?;
10217 self.20.encode(encoder, offset + 128, depth)?;
10218 self.21.encode(encoder, offset + 152, depth)?;
10219 self.22.encode(encoder, offset + 168, depth)?;
10220 self.23.encode(encoder, offset + 192, depth)?;
10221 Ok(())
10222 }
10223 }
10224
10225 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays {
10226 #[inline(always)]
10227 fn new_empty() -> Self {
10228 Self {
10229 b_0: fidl::new_empty!(fidl::encoding::Array<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10230 i8_0: fidl::new_empty!(fidl::encoding::Array<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10231 i16_0: fidl::new_empty!(fidl::encoding::Array<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10232 i32_0: fidl::new_empty!(fidl::encoding::Array<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10233 i64_0: fidl::new_empty!(fidl::encoding::Array<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10234 u8_0: fidl::new_empty!(fidl::encoding::Array<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10235 u16_0: fidl::new_empty!(fidl::encoding::Array<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10236 u32_0: fidl::new_empty!(fidl::encoding::Array<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10237 u64_0: fidl::new_empty!(fidl::encoding::Array<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10238 f32_0: fidl::new_empty!(fidl::encoding::Array<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10239 f64_0: fidl::new_empty!(fidl::encoding::Array<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
10240 handle_0: fidl::new_empty!(
10241 fidl::encoding::Array<
10242 fidl::encoding::HandleType<
10243 fidl::NullableHandle,
10244 { fidl::ObjectType::NONE.into_raw() },
10245 2147483648,
10246 >,
10247 1,
10248 >,
10249 fidl::encoding::DefaultFuchsiaResourceDialect
10250 ),
10251 b_1: fidl::new_empty!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10252 i8_1: fidl::new_empty!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10253 i16_1: fidl::new_empty!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10254 i32_1: fidl::new_empty!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10255 i64_1: fidl::new_empty!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10256 u8_1: fidl::new_empty!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10257 u16_1: fidl::new_empty!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10258 u32_1: fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10259 u64_1: fidl::new_empty!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10260 f32_1: fidl::new_empty!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10261 f64_1: fidl::new_empty!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
10262 handle_1: fidl::new_empty!(
10263 fidl::encoding::Array<
10264 fidl::encoding::HandleType<
10265 fidl::NullableHandle,
10266 { fidl::ObjectType::NONE.into_raw() },
10267 2147483648,
10268 >,
10269 3,
10270 >,
10271 fidl::encoding::DefaultFuchsiaResourceDialect
10272 ),
10273 }
10274 }
10275
10276 #[inline]
10277 unsafe fn decode(
10278 &mut self,
10279 decoder: &mut fidl::encoding::Decoder<
10280 '_,
10281 fidl::encoding::DefaultFuchsiaResourceDialect,
10282 >,
10283 offset: usize,
10284 _depth: fidl::encoding::Depth,
10285 ) -> fidl::Result<()> {
10286 decoder.debug_check_bounds::<Self>(offset);
10287 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(16) };
10289 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10290 let mask = 0xff00u64;
10291 let maskedval = padval & mask;
10292 if maskedval != 0 {
10293 return Err(fidl::Error::NonZeroPadding {
10294 padding_start: offset + 16 + ((mask as u64).trailing_zeros() / 8) as usize,
10295 });
10296 }
10297 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(32) };
10298 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10299 let mask = 0xffffffff00000000u64;
10300 let maskedval = padval & mask;
10301 if maskedval != 0 {
10302 return Err(fidl::Error::NonZeroPadding {
10303 padding_start: offset + 32 + ((mask as u64).trailing_zeros() / 8) as usize,
10304 });
10305 }
10306 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(72) };
10307 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10308 let mask = 0xffffffff00000000u64;
10309 let maskedval = padval & mask;
10310 if maskedval != 0 {
10311 return Err(fidl::Error::NonZeroPadding {
10312 padding_start: offset + 72 + ((mask as u64).trailing_zeros() / 8) as usize,
10313 });
10314 }
10315 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(104) };
10316 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10317 let mask = 0xff000000u64;
10318 let maskedval = padval & mask;
10319 if maskedval != 0 {
10320 return Err(fidl::Error::NonZeroPadding {
10321 padding_start: offset + 104 + ((mask as u64).trailing_zeros() / 8) as usize,
10322 });
10323 }
10324 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(112) };
10325 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10326 let mask = 0xffff0000u64;
10327 let maskedval = padval & mask;
10328 if maskedval != 0 {
10329 return Err(fidl::Error::NonZeroPadding {
10330 padding_start: offset + 112 + ((mask as u64).trailing_zeros() / 8) as usize,
10331 });
10332 }
10333 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(160) };
10334 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10335 let mask = 0xffffffff00000000u64;
10336 let maskedval = padval & mask;
10337 if maskedval != 0 {
10338 return Err(fidl::Error::NonZeroPadding {
10339 padding_start: offset + 160 + ((mask as u64).trailing_zeros() / 8) as usize,
10340 });
10341 }
10342 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(200) };
10343 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10344 let mask = 0xffffffff00000000u64;
10345 let maskedval = padval & mask;
10346 if maskedval != 0 {
10347 return Err(fidl::Error::NonZeroPadding {
10348 padding_start: offset + 200 + ((mask as u64).trailing_zeros() / 8) as usize,
10349 });
10350 }
10351 fidl::decode!(fidl::encoding::Array<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_0, decoder, offset + 0, _depth)?;
10352 fidl::decode!(fidl::encoding::Array<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_0, decoder, offset + 1, _depth)?;
10353 fidl::decode!(fidl::encoding::Array<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_0, decoder, offset + 2, _depth)?;
10354 fidl::decode!(fidl::encoding::Array<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_0, decoder, offset + 4, _depth)?;
10355 fidl::decode!(fidl::encoding::Array<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_0, decoder, offset + 8, _depth)?;
10356 fidl::decode!(fidl::encoding::Array<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_0, decoder, offset + 16, _depth)?;
10357 fidl::decode!(fidl::encoding::Array<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_0, decoder, offset + 18, _depth)?;
10358 fidl::decode!(fidl::encoding::Array<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_0, decoder, offset + 20, _depth)?;
10359 fidl::decode!(fidl::encoding::Array<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_0, decoder, offset + 24, _depth)?;
10360 fidl::decode!(fidl::encoding::Array<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_0, decoder, offset + 32, _depth)?;
10361 fidl::decode!(fidl::encoding::Array<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_0, decoder, offset + 40, _depth)?;
10362 fidl::decode!(
10363 fidl::encoding::Array<
10364 fidl::encoding::HandleType<
10365 fidl::NullableHandle,
10366 { fidl::ObjectType::NONE.into_raw() },
10367 2147483648,
10368 >,
10369 1,
10370 >,
10371 fidl::encoding::DefaultFuchsiaResourceDialect,
10372 &mut self.handle_0,
10373 decoder,
10374 offset + 48,
10375 _depth
10376 )?;
10377 fidl::decode!(fidl::encoding::Array<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_1, decoder, offset + 52, _depth)?;
10378 fidl::decode!(fidl::encoding::Array<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_1, decoder, offset + 55, _depth)?;
10379 fidl::decode!(fidl::encoding::Array<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_1, decoder, offset + 58, _depth)?;
10380 fidl::decode!(fidl::encoding::Array<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_1, decoder, offset + 64, _depth)?;
10381 fidl::decode!(fidl::encoding::Array<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_1, decoder, offset + 80, _depth)?;
10382 fidl::decode!(fidl::encoding::Array<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_1, decoder, offset + 104, _depth)?;
10383 fidl::decode!(fidl::encoding::Array<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_1, decoder, offset + 108, _depth)?;
10384 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_1, decoder, offset + 116, _depth)?;
10385 fidl::decode!(fidl::encoding::Array<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_1, decoder, offset + 128, _depth)?;
10386 fidl::decode!(fidl::encoding::Array<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_1, decoder, offset + 152, _depth)?;
10387 fidl::decode!(fidl::encoding::Array<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_1, decoder, offset + 168, _depth)?;
10388 fidl::decode!(
10389 fidl::encoding::Array<
10390 fidl::encoding::HandleType<
10391 fidl::NullableHandle,
10392 { fidl::ObjectType::NONE.into_raw() },
10393 2147483648,
10394 >,
10395 3,
10396 >,
10397 fidl::encoding::DefaultFuchsiaResourceDialect,
10398 &mut self.handle_1,
10399 decoder,
10400 offset + 192,
10401 _depth
10402 )?;
10403 Ok(())
10404 }
10405 }
10406
10407 impl fidl::encoding::ResourceTypeMarker for Arrays2d {
10408 type Borrowed<'a> = &'a mut Self;
10409 fn take_or_borrow<'a>(
10410 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
10411 ) -> Self::Borrowed<'a> {
10412 value
10413 }
10414 }
10415
10416 unsafe impl fidl::encoding::TypeMarker for Arrays2d {
10417 type Owned = Self;
10418
10419 #[inline(always)]
10420 fn inline_align(_context: fidl::encoding::Context) -> usize {
10421 8
10422 }
10423
10424 #[inline(always)]
10425 fn inline_size(_context: fidl::encoding::Context) -> usize {
10426 288
10427 }
10428 }
10429
10430 unsafe impl fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>
10431 for &mut Arrays2d
10432 {
10433 #[inline]
10434 unsafe fn encode(
10435 self,
10436 encoder: &mut fidl::encoding::Encoder<
10437 '_,
10438 fidl::encoding::DefaultFuchsiaResourceDialect,
10439 >,
10440 offset: usize,
10441 _depth: fidl::encoding::Depth,
10442 ) -> fidl::Result<()> {
10443 encoder.debug_check_bounds::<Arrays2d>(offset);
10444 fidl::encoding::Encode::<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
10446 (
10447 <fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b),
10448 <fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8),
10449 <fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16),
10450 <fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32),
10451 <fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64),
10452 <fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8),
10453 <fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16),
10454 <fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32),
10455 <fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64),
10456 <fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32),
10457 <fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64),
10458 <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),
10459 ),
10460 encoder, offset, _depth
10461 )
10462 }
10463 }
10464 unsafe impl<
10465 T0: fidl::encoding::Encode<
10466 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10467 fidl::encoding::DefaultFuchsiaResourceDialect,
10468 >,
10469 T1: fidl::encoding::Encode<
10470 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10471 fidl::encoding::DefaultFuchsiaResourceDialect,
10472 >,
10473 T2: fidl::encoding::Encode<
10474 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10475 fidl::encoding::DefaultFuchsiaResourceDialect,
10476 >,
10477 T3: fidl::encoding::Encode<
10478 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10479 fidl::encoding::DefaultFuchsiaResourceDialect,
10480 >,
10481 T4: fidl::encoding::Encode<
10482 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10483 fidl::encoding::DefaultFuchsiaResourceDialect,
10484 >,
10485 T5: fidl::encoding::Encode<
10486 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10487 fidl::encoding::DefaultFuchsiaResourceDialect,
10488 >,
10489 T6: fidl::encoding::Encode<
10490 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10491 fidl::encoding::DefaultFuchsiaResourceDialect,
10492 >,
10493 T7: fidl::encoding::Encode<
10494 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10495 fidl::encoding::DefaultFuchsiaResourceDialect,
10496 >,
10497 T8: fidl::encoding::Encode<
10498 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10499 fidl::encoding::DefaultFuchsiaResourceDialect,
10500 >,
10501 T9: fidl::encoding::Encode<
10502 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10503 fidl::encoding::DefaultFuchsiaResourceDialect,
10504 >,
10505 T10: fidl::encoding::Encode<
10506 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10507 fidl::encoding::DefaultFuchsiaResourceDialect,
10508 >,
10509 T11: fidl::encoding::Encode<
10510 fidl::encoding::Array<
10511 fidl::encoding::Array<
10512 fidl::encoding::HandleType<
10513 fidl::NullableHandle,
10514 { fidl::ObjectType::NONE.into_raw() },
10515 2147483648,
10516 >,
10517 2,
10518 >,
10519 3,
10520 >,
10521 fidl::encoding::DefaultFuchsiaResourceDialect,
10522 >,
10523 > fidl::encoding::Encode<Arrays2d, fidl::encoding::DefaultFuchsiaResourceDialect>
10524 for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
10525 {
10526 #[inline]
10527 unsafe fn encode(
10528 self,
10529 encoder: &mut fidl::encoding::Encoder<
10530 '_,
10531 fidl::encoding::DefaultFuchsiaResourceDialect,
10532 >,
10533 offset: usize,
10534 depth: fidl::encoding::Depth,
10535 ) -> fidl::Result<()> {
10536 encoder.debug_check_bounds::<Arrays2d>(offset);
10537 unsafe {
10540 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(112);
10541 (ptr as *mut u64).write_unaligned(0);
10542 }
10543 unsafe {
10544 let ptr = encoder.buf.as_mut_ptr().add(offset).offset(136);
10545 (ptr as *mut u64).write_unaligned(0);
10546 }
10547 self.0.encode(encoder, offset + 0, depth)?;
10549 self.1.encode(encoder, offset + 6, depth)?;
10550 self.2.encode(encoder, offset + 12, depth)?;
10551 self.3.encode(encoder, offset + 24, depth)?;
10552 self.4.encode(encoder, offset + 48, depth)?;
10553 self.5.encode(encoder, offset + 96, depth)?;
10554 self.6.encode(encoder, offset + 102, depth)?;
10555 self.7.encode(encoder, offset + 116, depth)?;
10556 self.8.encode(encoder, offset + 144, depth)?;
10557 self.9.encode(encoder, offset + 192, depth)?;
10558 self.10.encode(encoder, offset + 216, depth)?;
10559 self.11.encode(encoder, offset + 264, depth)?;
10560 Ok(())
10561 }
10562 }
10563
10564 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Arrays2d {
10565 #[inline(always)]
10566 fn new_empty() -> Self {
10567 Self {
10568 b: fidl::new_empty!(
10569 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10570 fidl::encoding::DefaultFuchsiaResourceDialect
10571 ),
10572 i8: fidl::new_empty!(
10573 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10574 fidl::encoding::DefaultFuchsiaResourceDialect
10575 ),
10576 i16: fidl::new_empty!(
10577 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10578 fidl::encoding::DefaultFuchsiaResourceDialect
10579 ),
10580 i32: fidl::new_empty!(
10581 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10582 fidl::encoding::DefaultFuchsiaResourceDialect
10583 ),
10584 i64: fidl::new_empty!(
10585 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10586 fidl::encoding::DefaultFuchsiaResourceDialect
10587 ),
10588 u8: fidl::new_empty!(
10589 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10590 fidl::encoding::DefaultFuchsiaResourceDialect
10591 ),
10592 u16: fidl::new_empty!(
10593 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10594 fidl::encoding::DefaultFuchsiaResourceDialect
10595 ),
10596 u32: fidl::new_empty!(
10597 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10598 fidl::encoding::DefaultFuchsiaResourceDialect
10599 ),
10600 u64: fidl::new_empty!(
10601 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10602 fidl::encoding::DefaultFuchsiaResourceDialect
10603 ),
10604 f32: fidl::new_empty!(
10605 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10606 fidl::encoding::DefaultFuchsiaResourceDialect
10607 ),
10608 f64: fidl::new_empty!(
10609 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10610 fidl::encoding::DefaultFuchsiaResourceDialect
10611 ),
10612 handle_handle: fidl::new_empty!(
10613 fidl::encoding::Array<
10614 fidl::encoding::Array<
10615 fidl::encoding::HandleType<
10616 fidl::NullableHandle,
10617 { fidl::ObjectType::NONE.into_raw() },
10618 2147483648,
10619 >,
10620 2,
10621 >,
10622 3,
10623 >,
10624 fidl::encoding::DefaultFuchsiaResourceDialect
10625 ),
10626 }
10627 }
10628
10629 #[inline]
10630 unsafe fn decode(
10631 &mut self,
10632 decoder: &mut fidl::encoding::Decoder<
10633 '_,
10634 fidl::encoding::DefaultFuchsiaResourceDialect,
10635 >,
10636 offset: usize,
10637 _depth: fidl::encoding::Depth,
10638 ) -> fidl::Result<()> {
10639 decoder.debug_check_bounds::<Self>(offset);
10640 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(112) };
10642 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10643 let mask = 0xffff0000u64;
10644 let maskedval = padval & mask;
10645 if maskedval != 0 {
10646 return Err(fidl::Error::NonZeroPadding {
10647 padding_start: offset + 112 + ((mask as u64).trailing_zeros() / 8) as usize,
10648 });
10649 }
10650 let ptr = unsafe { decoder.buf.as_ptr().add(offset).offset(136) };
10651 let padval = unsafe { (ptr as *const u64).read_unaligned() };
10652 let mask = 0xffffffff00000000u64;
10653 let maskedval = padval & mask;
10654 if maskedval != 0 {
10655 return Err(fidl::Error::NonZeroPadding {
10656 padding_start: offset + 136 + ((mask as u64).trailing_zeros() / 8) as usize,
10657 });
10658 }
10659 fidl::decode!(
10660 fidl::encoding::Array<fidl::encoding::Array<bool, 2>, 3>,
10661 fidl::encoding::DefaultFuchsiaResourceDialect,
10662 &mut self.b,
10663 decoder,
10664 offset + 0,
10665 _depth
10666 )?;
10667 fidl::decode!(
10668 fidl::encoding::Array<fidl::encoding::Array<i8, 2>, 3>,
10669 fidl::encoding::DefaultFuchsiaResourceDialect,
10670 &mut self.i8,
10671 decoder,
10672 offset + 6,
10673 _depth
10674 )?;
10675 fidl::decode!(
10676 fidl::encoding::Array<fidl::encoding::Array<i16, 2>, 3>,
10677 fidl::encoding::DefaultFuchsiaResourceDialect,
10678 &mut self.i16,
10679 decoder,
10680 offset + 12,
10681 _depth
10682 )?;
10683 fidl::decode!(
10684 fidl::encoding::Array<fidl::encoding::Array<i32, 2>, 3>,
10685 fidl::encoding::DefaultFuchsiaResourceDialect,
10686 &mut self.i32,
10687 decoder,
10688 offset + 24,
10689 _depth
10690 )?;
10691 fidl::decode!(
10692 fidl::encoding::Array<fidl::encoding::Array<i64, 2>, 3>,
10693 fidl::encoding::DefaultFuchsiaResourceDialect,
10694 &mut self.i64,
10695 decoder,
10696 offset + 48,
10697 _depth
10698 )?;
10699 fidl::decode!(
10700 fidl::encoding::Array<fidl::encoding::Array<u8, 2>, 3>,
10701 fidl::encoding::DefaultFuchsiaResourceDialect,
10702 &mut self.u8,
10703 decoder,
10704 offset + 96,
10705 _depth
10706 )?;
10707 fidl::decode!(
10708 fidl::encoding::Array<fidl::encoding::Array<u16, 2>, 3>,
10709 fidl::encoding::DefaultFuchsiaResourceDialect,
10710 &mut self.u16,
10711 decoder,
10712 offset + 102,
10713 _depth
10714 )?;
10715 fidl::decode!(
10716 fidl::encoding::Array<fidl::encoding::Array<u32, 2>, 3>,
10717 fidl::encoding::DefaultFuchsiaResourceDialect,
10718 &mut self.u32,
10719 decoder,
10720 offset + 116,
10721 _depth
10722 )?;
10723 fidl::decode!(
10724 fidl::encoding::Array<fidl::encoding::Array<u64, 2>, 3>,
10725 fidl::encoding::DefaultFuchsiaResourceDialect,
10726 &mut self.u64,
10727 decoder,
10728 offset + 144,
10729 _depth
10730 )?;
10731 fidl::decode!(
10732 fidl::encoding::Array<fidl::encoding::Array<f32, 2>, 3>,
10733 fidl::encoding::DefaultFuchsiaResourceDialect,
10734 &mut self.f32,
10735 decoder,
10736 offset + 192,
10737 _depth
10738 )?;
10739 fidl::decode!(
10740 fidl::encoding::Array<fidl::encoding::Array<f64, 2>, 3>,
10741 fidl::encoding::DefaultFuchsiaResourceDialect,
10742 &mut self.f64,
10743 decoder,
10744 offset + 216,
10745 _depth
10746 )?;
10747 fidl::decode!(
10748 fidl::encoding::Array<
10749 fidl::encoding::Array<
10750 fidl::encoding::HandleType<
10751 fidl::NullableHandle,
10752 { fidl::ObjectType::NONE.into_raw() },
10753 2147483648,
10754 >,
10755 2,
10756 >,
10757 3,
10758 >,
10759 fidl::encoding::DefaultFuchsiaResourceDialect,
10760 &mut self.handle_handle,
10761 decoder,
10762 offset + 264,
10763 _depth
10764 )?;
10765 Ok(())
10766 }
10767 }
10768
10769 impl fidl::encoding::ResourceTypeMarker for Handles {
10770 type Borrowed<'a> = &'a mut Self;
10771 fn take_or_borrow<'a>(
10772 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
10773 ) -> Self::Borrowed<'a> {
10774 value
10775 }
10776 }
10777
10778 unsafe impl fidl::encoding::TypeMarker for Handles {
10779 type Owned = Self;
10780
10781 #[inline(always)]
10782 fn inline_align(_context: fidl::encoding::Context) -> usize {
10783 4
10784 }
10785
10786 #[inline(always)]
10787 fn inline_size(_context: fidl::encoding::Context) -> usize {
10788 108
10789 }
10790 }
10791
10792 unsafe impl fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>
10793 for &mut Handles
10794 {
10795 #[inline]
10796 unsafe fn encode(
10797 self,
10798 encoder: &mut fidl::encoding::Encoder<
10799 '_,
10800 fidl::encoding::DefaultFuchsiaResourceDialect,
10801 >,
10802 offset: usize,
10803 _depth: fidl::encoding::Depth,
10804 ) -> fidl::Result<()> {
10805 encoder.debug_check_bounds::<Handles>(offset);
10806 fidl::encoding::Encode::<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
10808 (
10809 <fidl::encoding::HandleType<
10810 fidl::NullableHandle,
10811 { fidl::ObjectType::NONE.into_raw() },
10812 2147483648,
10813 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10814 &mut self.handle_handle,
10815 ),
10816 <fidl::encoding::HandleType<
10817 fidl::Process,
10818 { fidl::ObjectType::PROCESS.into_raw() },
10819 2147483648,
10820 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10821 &mut self.process_handle,
10822 ),
10823 <fidl::encoding::HandleType<
10824 fidl::Thread,
10825 { fidl::ObjectType::THREAD.into_raw() },
10826 2147483648,
10827 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10828 &mut self.thread_handle,
10829 ),
10830 <fidl::encoding::HandleType<
10831 fidl::Vmo,
10832 { fidl::ObjectType::VMO.into_raw() },
10833 2147483648,
10834 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10835 &mut self.vmo_handle
10836 ),
10837 <fidl::encoding::HandleType<
10838 fidl::Event,
10839 { fidl::ObjectType::EVENT.into_raw() },
10840 2147483648,
10841 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10842 &mut self.event_handle,
10843 ),
10844 <fidl::encoding::HandleType<
10845 fidl::Port,
10846 { fidl::ObjectType::PORT.into_raw() },
10847 2147483648,
10848 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10849 &mut self.port_handle
10850 ),
10851 <fidl::encoding::HandleType<
10852 fidl::Socket,
10853 { fidl::ObjectType::SOCKET.into_raw() },
10854 2147483648,
10855 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10856 &mut self.socket_handle,
10857 ),
10858 <fidl::encoding::HandleType<
10859 fidl::EventPair,
10860 { fidl::ObjectType::EVENTPAIR.into_raw() },
10861 2147483648,
10862 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10863 &mut self.eventpair_handle,
10864 ),
10865 <fidl::encoding::HandleType<
10866 fidl::Job,
10867 { fidl::ObjectType::JOB.into_raw() },
10868 2147483648,
10869 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10870 &mut self.job_handle
10871 ),
10872 <fidl::encoding::HandleType<
10873 fidl::Vmar,
10874 { fidl::ObjectType::VMAR.into_raw() },
10875 2147483648,
10876 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10877 &mut self.vmar_handle
10878 ),
10879 <fidl::encoding::HandleType<
10880 fidl::Fifo,
10881 { fidl::ObjectType::FIFO.into_raw() },
10882 2147483648,
10883 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10884 &mut self.fifo_handle
10885 ),
10886 <fidl::encoding::HandleType<
10887 fidl::Timer,
10888 { fidl::ObjectType::TIMER.into_raw() },
10889 2147483648,
10890 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10891 &mut self.timer_handle,
10892 ),
10893 <fidl::encoding::Optional<
10894 fidl::encoding::HandleType<
10895 fidl::NullableHandle,
10896 { fidl::ObjectType::NONE.into_raw() },
10897 2147483648,
10898 >,
10899 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10900 &mut self.nullable_handle_handle,
10901 ),
10902 <fidl::encoding::Optional<
10903 fidl::encoding::HandleType<
10904 fidl::Process,
10905 { fidl::ObjectType::PROCESS.into_raw() },
10906 2147483648,
10907 >,
10908 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10909 &mut self.nullable_process_handle,
10910 ),
10911 <fidl::encoding::Optional<
10912 fidl::encoding::HandleType<
10913 fidl::Thread,
10914 { fidl::ObjectType::THREAD.into_raw() },
10915 2147483648,
10916 >,
10917 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10918 &mut self.nullable_thread_handle,
10919 ),
10920 <fidl::encoding::Optional<
10921 fidl::encoding::HandleType<
10922 fidl::Vmo,
10923 { fidl::ObjectType::VMO.into_raw() },
10924 2147483648,
10925 >,
10926 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10927 &mut self.nullable_vmo_handle,
10928 ),
10929 <fidl::encoding::Optional<
10930 fidl::encoding::HandleType<
10931 fidl::Channel,
10932 { fidl::ObjectType::CHANNEL.into_raw() },
10933 2147483648,
10934 >,
10935 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10936 &mut self.nullable_channel_handle,
10937 ),
10938 <fidl::encoding::Optional<
10939 fidl::encoding::HandleType<
10940 fidl::Event,
10941 { fidl::ObjectType::EVENT.into_raw() },
10942 2147483648,
10943 >,
10944 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10945 &mut self.nullable_event_handle,
10946 ),
10947 <fidl::encoding::Optional<
10948 fidl::encoding::HandleType<
10949 fidl::Port,
10950 { fidl::ObjectType::PORT.into_raw() },
10951 2147483648,
10952 >,
10953 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10954 &mut self.nullable_port_handle,
10955 ),
10956 <fidl::encoding::Optional<
10957 fidl::encoding::HandleType<
10958 fidl::Interrupt,
10959 { fidl::ObjectType::INTERRUPT.into_raw() },
10960 2147483648,
10961 >,
10962 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10963 &mut self.nullable_interrupt_handle,
10964 ),
10965 <fidl::encoding::Optional<
10966 fidl::encoding::HandleType<
10967 fidl::DebugLog,
10968 { fidl::ObjectType::DEBUGLOG.into_raw() },
10969 2147483648,
10970 >,
10971 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10972 &mut self.nullable_log_handle,
10973 ),
10974 <fidl::encoding::Optional<
10975 fidl::encoding::HandleType<
10976 fidl::Socket,
10977 { fidl::ObjectType::SOCKET.into_raw() },
10978 2147483648,
10979 >,
10980 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10981 &mut self.nullable_socket_handle,
10982 ),
10983 <fidl::encoding::Optional<
10984 fidl::encoding::HandleType<
10985 fidl::EventPair,
10986 { fidl::ObjectType::EVENTPAIR.into_raw() },
10987 2147483648,
10988 >,
10989 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10990 &mut self.nullable_eventpair_handle,
10991 ),
10992 <fidl::encoding::Optional<
10993 fidl::encoding::HandleType<
10994 fidl::Job,
10995 { fidl::ObjectType::JOB.into_raw() },
10996 2147483648,
10997 >,
10998 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
10999 &mut self.nullable_job_handle,
11000 ),
11001 <fidl::encoding::Optional<
11002 fidl::encoding::HandleType<
11003 fidl::Vmar,
11004 { fidl::ObjectType::VMAR.into_raw() },
11005 2147483648,
11006 >,
11007 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11008 &mut self.nullable_vmar_handle,
11009 ),
11010 <fidl::encoding::Optional<
11011 fidl::encoding::HandleType<
11012 fidl::Fifo,
11013 { fidl::ObjectType::FIFO.into_raw() },
11014 2147483648,
11015 >,
11016 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11017 &mut self.nullable_fifo_handle,
11018 ),
11019 <fidl::encoding::Optional<
11020 fidl::encoding::HandleType<
11021 fidl::Timer,
11022 { fidl::ObjectType::TIMER.into_raw() },
11023 2147483648,
11024 >,
11025 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow(
11026 &mut self.nullable_timer_handle,
11027 ),
11028 ),
11029 encoder,
11030 offset,
11031 _depth,
11032 )
11033 }
11034 }
11035 unsafe impl<
11036 T0: fidl::encoding::Encode<
11037 fidl::encoding::HandleType<
11038 fidl::NullableHandle,
11039 { fidl::ObjectType::NONE.into_raw() },
11040 2147483648,
11041 >,
11042 fidl::encoding::DefaultFuchsiaResourceDialect,
11043 >,
11044 T1: fidl::encoding::Encode<
11045 fidl::encoding::HandleType<
11046 fidl::Process,
11047 { fidl::ObjectType::PROCESS.into_raw() },
11048 2147483648,
11049 >,
11050 fidl::encoding::DefaultFuchsiaResourceDialect,
11051 >,
11052 T2: fidl::encoding::Encode<
11053 fidl::encoding::HandleType<
11054 fidl::Thread,
11055 { fidl::ObjectType::THREAD.into_raw() },
11056 2147483648,
11057 >,
11058 fidl::encoding::DefaultFuchsiaResourceDialect,
11059 >,
11060 T3: fidl::encoding::Encode<
11061 fidl::encoding::HandleType<
11062 fidl::Vmo,
11063 { fidl::ObjectType::VMO.into_raw() },
11064 2147483648,
11065 >,
11066 fidl::encoding::DefaultFuchsiaResourceDialect,
11067 >,
11068 T4: fidl::encoding::Encode<
11069 fidl::encoding::HandleType<
11070 fidl::Event,
11071 { fidl::ObjectType::EVENT.into_raw() },
11072 2147483648,
11073 >,
11074 fidl::encoding::DefaultFuchsiaResourceDialect,
11075 >,
11076 T5: fidl::encoding::Encode<
11077 fidl::encoding::HandleType<
11078 fidl::Port,
11079 { fidl::ObjectType::PORT.into_raw() },
11080 2147483648,
11081 >,
11082 fidl::encoding::DefaultFuchsiaResourceDialect,
11083 >,
11084 T6: fidl::encoding::Encode<
11085 fidl::encoding::HandleType<
11086 fidl::Socket,
11087 { fidl::ObjectType::SOCKET.into_raw() },
11088 2147483648,
11089 >,
11090 fidl::encoding::DefaultFuchsiaResourceDialect,
11091 >,
11092 T7: fidl::encoding::Encode<
11093 fidl::encoding::HandleType<
11094 fidl::EventPair,
11095 { fidl::ObjectType::EVENTPAIR.into_raw() },
11096 2147483648,
11097 >,
11098 fidl::encoding::DefaultFuchsiaResourceDialect,
11099 >,
11100 T8: fidl::encoding::Encode<
11101 fidl::encoding::HandleType<
11102 fidl::Job,
11103 { fidl::ObjectType::JOB.into_raw() },
11104 2147483648,
11105 >,
11106 fidl::encoding::DefaultFuchsiaResourceDialect,
11107 >,
11108 T9: fidl::encoding::Encode<
11109 fidl::encoding::HandleType<
11110 fidl::Vmar,
11111 { fidl::ObjectType::VMAR.into_raw() },
11112 2147483648,
11113 >,
11114 fidl::encoding::DefaultFuchsiaResourceDialect,
11115 >,
11116 T10: fidl::encoding::Encode<
11117 fidl::encoding::HandleType<
11118 fidl::Fifo,
11119 { fidl::ObjectType::FIFO.into_raw() },
11120 2147483648,
11121 >,
11122 fidl::encoding::DefaultFuchsiaResourceDialect,
11123 >,
11124 T11: fidl::encoding::Encode<
11125 fidl::encoding::HandleType<
11126 fidl::Timer,
11127 { fidl::ObjectType::TIMER.into_raw() },
11128 2147483648,
11129 >,
11130 fidl::encoding::DefaultFuchsiaResourceDialect,
11131 >,
11132 T12: fidl::encoding::Encode<
11133 fidl::encoding::Optional<
11134 fidl::encoding::HandleType<
11135 fidl::NullableHandle,
11136 { fidl::ObjectType::NONE.into_raw() },
11137 2147483648,
11138 >,
11139 >,
11140 fidl::encoding::DefaultFuchsiaResourceDialect,
11141 >,
11142 T13: fidl::encoding::Encode<
11143 fidl::encoding::Optional<
11144 fidl::encoding::HandleType<
11145 fidl::Process,
11146 { fidl::ObjectType::PROCESS.into_raw() },
11147 2147483648,
11148 >,
11149 >,
11150 fidl::encoding::DefaultFuchsiaResourceDialect,
11151 >,
11152 T14: fidl::encoding::Encode<
11153 fidl::encoding::Optional<
11154 fidl::encoding::HandleType<
11155 fidl::Thread,
11156 { fidl::ObjectType::THREAD.into_raw() },
11157 2147483648,
11158 >,
11159 >,
11160 fidl::encoding::DefaultFuchsiaResourceDialect,
11161 >,
11162 T15: fidl::encoding::Encode<
11163 fidl::encoding::Optional<
11164 fidl::encoding::HandleType<
11165 fidl::Vmo,
11166 { fidl::ObjectType::VMO.into_raw() },
11167 2147483648,
11168 >,
11169 >,
11170 fidl::encoding::DefaultFuchsiaResourceDialect,
11171 >,
11172 T16: fidl::encoding::Encode<
11173 fidl::encoding::Optional<
11174 fidl::encoding::HandleType<
11175 fidl::Channel,
11176 { fidl::ObjectType::CHANNEL.into_raw() },
11177 2147483648,
11178 >,
11179 >,
11180 fidl::encoding::DefaultFuchsiaResourceDialect,
11181 >,
11182 T17: fidl::encoding::Encode<
11183 fidl::encoding::Optional<
11184 fidl::encoding::HandleType<
11185 fidl::Event,
11186 { fidl::ObjectType::EVENT.into_raw() },
11187 2147483648,
11188 >,
11189 >,
11190 fidl::encoding::DefaultFuchsiaResourceDialect,
11191 >,
11192 T18: fidl::encoding::Encode<
11193 fidl::encoding::Optional<
11194 fidl::encoding::HandleType<
11195 fidl::Port,
11196 { fidl::ObjectType::PORT.into_raw() },
11197 2147483648,
11198 >,
11199 >,
11200 fidl::encoding::DefaultFuchsiaResourceDialect,
11201 >,
11202 T19: fidl::encoding::Encode<
11203 fidl::encoding::Optional<
11204 fidl::encoding::HandleType<
11205 fidl::Interrupt,
11206 { fidl::ObjectType::INTERRUPT.into_raw() },
11207 2147483648,
11208 >,
11209 >,
11210 fidl::encoding::DefaultFuchsiaResourceDialect,
11211 >,
11212 T20: fidl::encoding::Encode<
11213 fidl::encoding::Optional<
11214 fidl::encoding::HandleType<
11215 fidl::DebugLog,
11216 { fidl::ObjectType::DEBUGLOG.into_raw() },
11217 2147483648,
11218 >,
11219 >,
11220 fidl::encoding::DefaultFuchsiaResourceDialect,
11221 >,
11222 T21: fidl::encoding::Encode<
11223 fidl::encoding::Optional<
11224 fidl::encoding::HandleType<
11225 fidl::Socket,
11226 { fidl::ObjectType::SOCKET.into_raw() },
11227 2147483648,
11228 >,
11229 >,
11230 fidl::encoding::DefaultFuchsiaResourceDialect,
11231 >,
11232 T22: fidl::encoding::Encode<
11233 fidl::encoding::Optional<
11234 fidl::encoding::HandleType<
11235 fidl::EventPair,
11236 { fidl::ObjectType::EVENTPAIR.into_raw() },
11237 2147483648,
11238 >,
11239 >,
11240 fidl::encoding::DefaultFuchsiaResourceDialect,
11241 >,
11242 T23: fidl::encoding::Encode<
11243 fidl::encoding::Optional<
11244 fidl::encoding::HandleType<
11245 fidl::Job,
11246 { fidl::ObjectType::JOB.into_raw() },
11247 2147483648,
11248 >,
11249 >,
11250 fidl::encoding::DefaultFuchsiaResourceDialect,
11251 >,
11252 T24: fidl::encoding::Encode<
11253 fidl::encoding::Optional<
11254 fidl::encoding::HandleType<
11255 fidl::Vmar,
11256 { fidl::ObjectType::VMAR.into_raw() },
11257 2147483648,
11258 >,
11259 >,
11260 fidl::encoding::DefaultFuchsiaResourceDialect,
11261 >,
11262 T25: fidl::encoding::Encode<
11263 fidl::encoding::Optional<
11264 fidl::encoding::HandleType<
11265 fidl::Fifo,
11266 { fidl::ObjectType::FIFO.into_raw() },
11267 2147483648,
11268 >,
11269 >,
11270 fidl::encoding::DefaultFuchsiaResourceDialect,
11271 >,
11272 T26: fidl::encoding::Encode<
11273 fidl::encoding::Optional<
11274 fidl::encoding::HandleType<
11275 fidl::Timer,
11276 { fidl::ObjectType::TIMER.into_raw() },
11277 2147483648,
11278 >,
11279 >,
11280 fidl::encoding::DefaultFuchsiaResourceDialect,
11281 >,
11282 > fidl::encoding::Encode<Handles, fidl::encoding::DefaultFuchsiaResourceDialect>
11283 for (
11284 T0,
11285 T1,
11286 T2,
11287 T3,
11288 T4,
11289 T5,
11290 T6,
11291 T7,
11292 T8,
11293 T9,
11294 T10,
11295 T11,
11296 T12,
11297 T13,
11298 T14,
11299 T15,
11300 T16,
11301 T17,
11302 T18,
11303 T19,
11304 T20,
11305 T21,
11306 T22,
11307 T23,
11308 T24,
11309 T25,
11310 T26,
11311 )
11312 {
11313 #[inline]
11314 unsafe fn encode(
11315 self,
11316 encoder: &mut fidl::encoding::Encoder<
11317 '_,
11318 fidl::encoding::DefaultFuchsiaResourceDialect,
11319 >,
11320 offset: usize,
11321 depth: fidl::encoding::Depth,
11322 ) -> fidl::Result<()> {
11323 encoder.debug_check_bounds::<Handles>(offset);
11324 self.0.encode(encoder, offset + 0, depth)?;
11328 self.1.encode(encoder, offset + 4, depth)?;
11329 self.2.encode(encoder, offset + 8, depth)?;
11330 self.3.encode(encoder, offset + 12, depth)?;
11331 self.4.encode(encoder, offset + 16, depth)?;
11332 self.5.encode(encoder, offset + 20, depth)?;
11333 self.6.encode(encoder, offset + 24, depth)?;
11334 self.7.encode(encoder, offset + 28, depth)?;
11335 self.8.encode(encoder, offset + 32, depth)?;
11336 self.9.encode(encoder, offset + 36, depth)?;
11337 self.10.encode(encoder, offset + 40, depth)?;
11338 self.11.encode(encoder, offset + 44, depth)?;
11339 self.12.encode(encoder, offset + 48, depth)?;
11340 self.13.encode(encoder, offset + 52, depth)?;
11341 self.14.encode(encoder, offset + 56, depth)?;
11342 self.15.encode(encoder, offset + 60, depth)?;
11343 self.16.encode(encoder, offset + 64, depth)?;
11344 self.17.encode(encoder, offset + 68, depth)?;
11345 self.18.encode(encoder, offset + 72, depth)?;
11346 self.19.encode(encoder, offset + 76, depth)?;
11347 self.20.encode(encoder, offset + 80, depth)?;
11348 self.21.encode(encoder, offset + 84, depth)?;
11349 self.22.encode(encoder, offset + 88, depth)?;
11350 self.23.encode(encoder, offset + 92, depth)?;
11351 self.24.encode(encoder, offset + 96, depth)?;
11352 self.25.encode(encoder, offset + 100, depth)?;
11353 self.26.encode(encoder, offset + 104, depth)?;
11354 Ok(())
11355 }
11356 }
11357
11358 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Handles {
11359 #[inline(always)]
11360 fn new_empty() -> Self {
11361 Self {
11362 handle_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11363 process_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Process, { fidl::ObjectType::PROCESS.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11364 thread_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Thread, { fidl::ObjectType::THREAD.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11365 vmo_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Vmo, { fidl::ObjectType::VMO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11366 event_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Event, { fidl::ObjectType::EVENT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11367 port_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Port, { fidl::ObjectType::PORT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11368 socket_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Socket, { fidl::ObjectType::SOCKET.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11369 eventpair_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::EventPair, { fidl::ObjectType::EVENTPAIR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11370 job_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Job, { fidl::ObjectType::JOB.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11371 vmar_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Vmar, { fidl::ObjectType::VMAR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11372 fifo_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Fifo, { fidl::ObjectType::FIFO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11373 timer_handle: fidl::new_empty!(fidl::encoding::HandleType<fidl::Timer, { fidl::ObjectType::TIMER.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
11374 nullable_handle_handle: fidl::new_empty!(
11375 fidl::encoding::Optional<
11376 fidl::encoding::HandleType<
11377 fidl::NullableHandle,
11378 { fidl::ObjectType::NONE.into_raw() },
11379 2147483648,
11380 >,
11381 >,
11382 fidl::encoding::DefaultFuchsiaResourceDialect
11383 ),
11384 nullable_process_handle: fidl::new_empty!(
11385 fidl::encoding::Optional<
11386 fidl::encoding::HandleType<
11387 fidl::Process,
11388 { fidl::ObjectType::PROCESS.into_raw() },
11389 2147483648,
11390 >,
11391 >,
11392 fidl::encoding::DefaultFuchsiaResourceDialect
11393 ),
11394 nullable_thread_handle: fidl::new_empty!(
11395 fidl::encoding::Optional<
11396 fidl::encoding::HandleType<
11397 fidl::Thread,
11398 { fidl::ObjectType::THREAD.into_raw() },
11399 2147483648,
11400 >,
11401 >,
11402 fidl::encoding::DefaultFuchsiaResourceDialect
11403 ),
11404 nullable_vmo_handle: fidl::new_empty!(
11405 fidl::encoding::Optional<
11406 fidl::encoding::HandleType<
11407 fidl::Vmo,
11408 { fidl::ObjectType::VMO.into_raw() },
11409 2147483648,
11410 >,
11411 >,
11412 fidl::encoding::DefaultFuchsiaResourceDialect
11413 ),
11414 nullable_channel_handle: fidl::new_empty!(
11415 fidl::encoding::Optional<
11416 fidl::encoding::HandleType<
11417 fidl::Channel,
11418 { fidl::ObjectType::CHANNEL.into_raw() },
11419 2147483648,
11420 >,
11421 >,
11422 fidl::encoding::DefaultFuchsiaResourceDialect
11423 ),
11424 nullable_event_handle: fidl::new_empty!(
11425 fidl::encoding::Optional<
11426 fidl::encoding::HandleType<
11427 fidl::Event,
11428 { fidl::ObjectType::EVENT.into_raw() },
11429 2147483648,
11430 >,
11431 >,
11432 fidl::encoding::DefaultFuchsiaResourceDialect
11433 ),
11434 nullable_port_handle: fidl::new_empty!(
11435 fidl::encoding::Optional<
11436 fidl::encoding::HandleType<
11437 fidl::Port,
11438 { fidl::ObjectType::PORT.into_raw() },
11439 2147483648,
11440 >,
11441 >,
11442 fidl::encoding::DefaultFuchsiaResourceDialect
11443 ),
11444 nullable_interrupt_handle: fidl::new_empty!(
11445 fidl::encoding::Optional<
11446 fidl::encoding::HandleType<
11447 fidl::Interrupt,
11448 { fidl::ObjectType::INTERRUPT.into_raw() },
11449 2147483648,
11450 >,
11451 >,
11452 fidl::encoding::DefaultFuchsiaResourceDialect
11453 ),
11454 nullable_log_handle: fidl::new_empty!(
11455 fidl::encoding::Optional<
11456 fidl::encoding::HandleType<
11457 fidl::DebugLog,
11458 { fidl::ObjectType::DEBUGLOG.into_raw() },
11459 2147483648,
11460 >,
11461 >,
11462 fidl::encoding::DefaultFuchsiaResourceDialect
11463 ),
11464 nullable_socket_handle: fidl::new_empty!(
11465 fidl::encoding::Optional<
11466 fidl::encoding::HandleType<
11467 fidl::Socket,
11468 { fidl::ObjectType::SOCKET.into_raw() },
11469 2147483648,
11470 >,
11471 >,
11472 fidl::encoding::DefaultFuchsiaResourceDialect
11473 ),
11474 nullable_eventpair_handle: fidl::new_empty!(
11475 fidl::encoding::Optional<
11476 fidl::encoding::HandleType<
11477 fidl::EventPair,
11478 { fidl::ObjectType::EVENTPAIR.into_raw() },
11479 2147483648,
11480 >,
11481 >,
11482 fidl::encoding::DefaultFuchsiaResourceDialect
11483 ),
11484 nullable_job_handle: fidl::new_empty!(
11485 fidl::encoding::Optional<
11486 fidl::encoding::HandleType<
11487 fidl::Job,
11488 { fidl::ObjectType::JOB.into_raw() },
11489 2147483648,
11490 >,
11491 >,
11492 fidl::encoding::DefaultFuchsiaResourceDialect
11493 ),
11494 nullable_vmar_handle: fidl::new_empty!(
11495 fidl::encoding::Optional<
11496 fidl::encoding::HandleType<
11497 fidl::Vmar,
11498 { fidl::ObjectType::VMAR.into_raw() },
11499 2147483648,
11500 >,
11501 >,
11502 fidl::encoding::DefaultFuchsiaResourceDialect
11503 ),
11504 nullable_fifo_handle: fidl::new_empty!(
11505 fidl::encoding::Optional<
11506 fidl::encoding::HandleType<
11507 fidl::Fifo,
11508 { fidl::ObjectType::FIFO.into_raw() },
11509 2147483648,
11510 >,
11511 >,
11512 fidl::encoding::DefaultFuchsiaResourceDialect
11513 ),
11514 nullable_timer_handle: fidl::new_empty!(
11515 fidl::encoding::Optional<
11516 fidl::encoding::HandleType<
11517 fidl::Timer,
11518 { fidl::ObjectType::TIMER.into_raw() },
11519 2147483648,
11520 >,
11521 >,
11522 fidl::encoding::DefaultFuchsiaResourceDialect
11523 ),
11524 }
11525 }
11526
11527 #[inline]
11528 unsafe fn decode(
11529 &mut self,
11530 decoder: &mut fidl::encoding::Decoder<
11531 '_,
11532 fidl::encoding::DefaultFuchsiaResourceDialect,
11533 >,
11534 offset: usize,
11535 _depth: fidl::encoding::Depth,
11536 ) -> fidl::Result<()> {
11537 decoder.debug_check_bounds::<Self>(offset);
11538 fidl::decode!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.handle_handle, decoder, offset + 0, _depth)?;
11540 fidl::decode!(fidl::encoding::HandleType<fidl::Process, { fidl::ObjectType::PROCESS.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.process_handle, decoder, offset + 4, _depth)?;
11541 fidl::decode!(fidl::encoding::HandleType<fidl::Thread, { fidl::ObjectType::THREAD.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.thread_handle, decoder, offset + 8, _depth)?;
11542 fidl::decode!(fidl::encoding::HandleType<fidl::Vmo, { fidl::ObjectType::VMO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.vmo_handle, decoder, offset + 12, _depth)?;
11543 fidl::decode!(fidl::encoding::HandleType<fidl::Event, { fidl::ObjectType::EVENT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.event_handle, decoder, offset + 16, _depth)?;
11544 fidl::decode!(fidl::encoding::HandleType<fidl::Port, { fidl::ObjectType::PORT.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.port_handle, decoder, offset + 20, _depth)?;
11545 fidl::decode!(fidl::encoding::HandleType<fidl::Socket, { fidl::ObjectType::SOCKET.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.socket_handle, decoder, offset + 24, _depth)?;
11546 fidl::decode!(fidl::encoding::HandleType<fidl::EventPair, { fidl::ObjectType::EVENTPAIR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.eventpair_handle, decoder, offset + 28, _depth)?;
11547 fidl::decode!(fidl::encoding::HandleType<fidl::Job, { fidl::ObjectType::JOB.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.job_handle, decoder, offset + 32, _depth)?;
11548 fidl::decode!(fidl::encoding::HandleType<fidl::Vmar, { fidl::ObjectType::VMAR.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.vmar_handle, decoder, offset + 36, _depth)?;
11549 fidl::decode!(fidl::encoding::HandleType<fidl::Fifo, { fidl::ObjectType::FIFO.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.fifo_handle, decoder, offset + 40, _depth)?;
11550 fidl::decode!(fidl::encoding::HandleType<fidl::Timer, { fidl::ObjectType::TIMER.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.timer_handle, decoder, offset + 44, _depth)?;
11551 fidl::decode!(
11552 fidl::encoding::Optional<
11553 fidl::encoding::HandleType<
11554 fidl::NullableHandle,
11555 { fidl::ObjectType::NONE.into_raw() },
11556 2147483648,
11557 >,
11558 >,
11559 fidl::encoding::DefaultFuchsiaResourceDialect,
11560 &mut self.nullable_handle_handle,
11561 decoder,
11562 offset + 48,
11563 _depth
11564 )?;
11565 fidl::decode!(
11566 fidl::encoding::Optional<
11567 fidl::encoding::HandleType<
11568 fidl::Process,
11569 { fidl::ObjectType::PROCESS.into_raw() },
11570 2147483648,
11571 >,
11572 >,
11573 fidl::encoding::DefaultFuchsiaResourceDialect,
11574 &mut self.nullable_process_handle,
11575 decoder,
11576 offset + 52,
11577 _depth
11578 )?;
11579 fidl::decode!(
11580 fidl::encoding::Optional<
11581 fidl::encoding::HandleType<
11582 fidl::Thread,
11583 { fidl::ObjectType::THREAD.into_raw() },
11584 2147483648,
11585 >,
11586 >,
11587 fidl::encoding::DefaultFuchsiaResourceDialect,
11588 &mut self.nullable_thread_handle,
11589 decoder,
11590 offset + 56,
11591 _depth
11592 )?;
11593 fidl::decode!(
11594 fidl::encoding::Optional<
11595 fidl::encoding::HandleType<
11596 fidl::Vmo,
11597 { fidl::ObjectType::VMO.into_raw() },
11598 2147483648,
11599 >,
11600 >,
11601 fidl::encoding::DefaultFuchsiaResourceDialect,
11602 &mut self.nullable_vmo_handle,
11603 decoder,
11604 offset + 60,
11605 _depth
11606 )?;
11607 fidl::decode!(
11608 fidl::encoding::Optional<
11609 fidl::encoding::HandleType<
11610 fidl::Channel,
11611 { fidl::ObjectType::CHANNEL.into_raw() },
11612 2147483648,
11613 >,
11614 >,
11615 fidl::encoding::DefaultFuchsiaResourceDialect,
11616 &mut self.nullable_channel_handle,
11617 decoder,
11618 offset + 64,
11619 _depth
11620 )?;
11621 fidl::decode!(
11622 fidl::encoding::Optional<
11623 fidl::encoding::HandleType<
11624 fidl::Event,
11625 { fidl::ObjectType::EVENT.into_raw() },
11626 2147483648,
11627 >,
11628 >,
11629 fidl::encoding::DefaultFuchsiaResourceDialect,
11630 &mut self.nullable_event_handle,
11631 decoder,
11632 offset + 68,
11633 _depth
11634 )?;
11635 fidl::decode!(
11636 fidl::encoding::Optional<
11637 fidl::encoding::HandleType<
11638 fidl::Port,
11639 { fidl::ObjectType::PORT.into_raw() },
11640 2147483648,
11641 >,
11642 >,
11643 fidl::encoding::DefaultFuchsiaResourceDialect,
11644 &mut self.nullable_port_handle,
11645 decoder,
11646 offset + 72,
11647 _depth
11648 )?;
11649 fidl::decode!(
11650 fidl::encoding::Optional<
11651 fidl::encoding::HandleType<
11652 fidl::Interrupt,
11653 { fidl::ObjectType::INTERRUPT.into_raw() },
11654 2147483648,
11655 >,
11656 >,
11657 fidl::encoding::DefaultFuchsiaResourceDialect,
11658 &mut self.nullable_interrupt_handle,
11659 decoder,
11660 offset + 76,
11661 _depth
11662 )?;
11663 fidl::decode!(
11664 fidl::encoding::Optional<
11665 fidl::encoding::HandleType<
11666 fidl::DebugLog,
11667 { fidl::ObjectType::DEBUGLOG.into_raw() },
11668 2147483648,
11669 >,
11670 >,
11671 fidl::encoding::DefaultFuchsiaResourceDialect,
11672 &mut self.nullable_log_handle,
11673 decoder,
11674 offset + 80,
11675 _depth
11676 )?;
11677 fidl::decode!(
11678 fidl::encoding::Optional<
11679 fidl::encoding::HandleType<
11680 fidl::Socket,
11681 { fidl::ObjectType::SOCKET.into_raw() },
11682 2147483648,
11683 >,
11684 >,
11685 fidl::encoding::DefaultFuchsiaResourceDialect,
11686 &mut self.nullable_socket_handle,
11687 decoder,
11688 offset + 84,
11689 _depth
11690 )?;
11691 fidl::decode!(
11692 fidl::encoding::Optional<
11693 fidl::encoding::HandleType<
11694 fidl::EventPair,
11695 { fidl::ObjectType::EVENTPAIR.into_raw() },
11696 2147483648,
11697 >,
11698 >,
11699 fidl::encoding::DefaultFuchsiaResourceDialect,
11700 &mut self.nullable_eventpair_handle,
11701 decoder,
11702 offset + 88,
11703 _depth
11704 )?;
11705 fidl::decode!(
11706 fidl::encoding::Optional<
11707 fidl::encoding::HandleType<
11708 fidl::Job,
11709 { fidl::ObjectType::JOB.into_raw() },
11710 2147483648,
11711 >,
11712 >,
11713 fidl::encoding::DefaultFuchsiaResourceDialect,
11714 &mut self.nullable_job_handle,
11715 decoder,
11716 offset + 92,
11717 _depth
11718 )?;
11719 fidl::decode!(
11720 fidl::encoding::Optional<
11721 fidl::encoding::HandleType<
11722 fidl::Vmar,
11723 { fidl::ObjectType::VMAR.into_raw() },
11724 2147483648,
11725 >,
11726 >,
11727 fidl::encoding::DefaultFuchsiaResourceDialect,
11728 &mut self.nullable_vmar_handle,
11729 decoder,
11730 offset + 96,
11731 _depth
11732 )?;
11733 fidl::decode!(
11734 fidl::encoding::Optional<
11735 fidl::encoding::HandleType<
11736 fidl::Fifo,
11737 { fidl::ObjectType::FIFO.into_raw() },
11738 2147483648,
11739 >,
11740 >,
11741 fidl::encoding::DefaultFuchsiaResourceDialect,
11742 &mut self.nullable_fifo_handle,
11743 decoder,
11744 offset + 100,
11745 _depth
11746 )?;
11747 fidl::decode!(
11748 fidl::encoding::Optional<
11749 fidl::encoding::HandleType<
11750 fidl::Timer,
11751 { fidl::ObjectType::TIMER.into_raw() },
11752 2147483648,
11753 >,
11754 >,
11755 fidl::encoding::DefaultFuchsiaResourceDialect,
11756 &mut self.nullable_timer_handle,
11757 decoder,
11758 offset + 104,
11759 _depth
11760 )?;
11761 Ok(())
11762 }
11763 }
11764
11765 impl fidl::encoding::ResourceTypeMarker for Vectors {
11766 type Borrowed<'a> = &'a mut Self;
11767 fn take_or_borrow<'a>(
11768 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
11769 ) -> Self::Borrowed<'a> {
11770 value
11771 }
11772 }
11773
11774 unsafe impl fidl::encoding::TypeMarker for Vectors {
11775 type Owned = Self;
11776
11777 #[inline(always)]
11778 fn inline_align(_context: fidl::encoding::Context) -> usize {
11779 8
11780 }
11781
11782 #[inline(always)]
11783 fn inline_size(_context: fidl::encoding::Context) -> usize {
11784 1920
11785 }
11786 }
11787
11788 unsafe impl fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>
11789 for &mut Vectors
11790 {
11791 #[inline]
11792 unsafe fn encode(
11793 self,
11794 encoder: &mut fidl::encoding::Encoder<
11795 '_,
11796 fidl::encoding::DefaultFuchsiaResourceDialect,
11797 >,
11798 offset: usize,
11799 _depth: fidl::encoding::Depth,
11800 ) -> fidl::Result<()> {
11801 encoder.debug_check_bounds::<Vectors>(offset);
11802 fidl::encoding::Encode::<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
11804 (
11805 <fidl::encoding::UnboundedVector<bool> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_0),
11806 <fidl::encoding::UnboundedVector<i8> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_0),
11807 <fidl::encoding::UnboundedVector<i16> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_0),
11808 <fidl::encoding::UnboundedVector<i32> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_0),
11809 <fidl::encoding::UnboundedVector<i64> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_0),
11810 <fidl::encoding::UnboundedVector<u8> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_0),
11811 <fidl::encoding::UnboundedVector<u16> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_0),
11812 <fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_0),
11813 <fidl::encoding::UnboundedVector<u64> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_0),
11814 <fidl::encoding::UnboundedVector<f32> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_0),
11815 <fidl::encoding::UnboundedVector<f64> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_0),
11816 <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),
11817 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_1),
11818 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_1),
11819 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_1),
11820 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_1),
11821 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_1),
11822 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_1),
11823 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_1),
11824 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_1),
11825 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_1),
11826 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_1),
11827 <fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_1),
11828 <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),
11829 <fidl::encoding::Vector<bool, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_0),
11830 <fidl::encoding::Vector<i8, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_0),
11831 <fidl::encoding::Vector<i16, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_0),
11832 <fidl::encoding::Vector<i32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_0),
11833 <fidl::encoding::Vector<i64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_0),
11834 <fidl::encoding::Vector<u8, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_0),
11835 <fidl::encoding::Vector<u16, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_0),
11836 <fidl::encoding::Vector<u32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_0),
11837 <fidl::encoding::Vector<u64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_0),
11838 <fidl::encoding::Vector<f32, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_0),
11839 <fidl::encoding::Vector<f64, 1> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_0),
11840 <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),
11841 <fidl::encoding::Vector<bool, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_1),
11842 <fidl::encoding::Vector<i8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_1),
11843 <fidl::encoding::Vector<i16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_1),
11844 <fidl::encoding::Vector<i32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_1),
11845 <fidl::encoding::Vector<i64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_1),
11846 <fidl::encoding::Vector<u8, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_1),
11847 <fidl::encoding::Vector<u16, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_1),
11848 <fidl::encoding::Vector<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_1),
11849 <fidl::encoding::Vector<u64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_1),
11850 <fidl::encoding::Vector<f32, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_1),
11851 <fidl::encoding::Vector<f64, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_1),
11852 <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),
11853 <fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_sized_2),
11854 <fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_sized_2),
11855 <fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_sized_2),
11856 <fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_sized_2),
11857 <fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_sized_2),
11858 <fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_sized_2),
11859 <fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_sized_2),
11860 <fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_sized_2),
11861 <fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_sized_2),
11862 <fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_sized_2),
11863 <fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_sized_2),
11864 <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),
11865 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_0),
11866 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_0),
11867 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_0),
11868 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_0),
11869 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_0),
11870 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_0),
11871 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_0),
11872 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_0),
11873 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_0),
11874 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_0),
11875 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_0),
11876 <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),
11877 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_1),
11878 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_1),
11879 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_1),
11880 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_1),
11881 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_1),
11882 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_1),
11883 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_1),
11884 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_1),
11885 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_1),
11886 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_1),
11887 <fidl::encoding::Optional<fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_1),
11888 <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),
11889 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_0),
11890 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_0),
11891 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_0),
11892 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_0),
11893 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_0),
11894 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_0),
11895 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_0),
11896 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_0),
11897 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_0),
11898 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_0),
11899 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_0),
11900 <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),
11901 <fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_1),
11902 <fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_1),
11903 <fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_1),
11904 <fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_1),
11905 <fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_1),
11906 <fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_1),
11907 <fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_1),
11908 <fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_1),
11909 <fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_1),
11910 <fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_1),
11911 <fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_1),
11912 <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),
11913 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.b_nullable_sized_2),
11914 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i8_nullable_sized_2),
11915 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i16_nullable_sized_2),
11916 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i32_nullable_sized_2),
11917 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.i64_nullable_sized_2),
11918 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u8_nullable_sized_2),
11919 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u16_nullable_sized_2),
11920 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u32_nullable_sized_2),
11921 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.u64_nullable_sized_2),
11922 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f32_nullable_sized_2),
11923 <fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>> as fidl::encoding::ValueTypeMarker>::borrow(&self.f64_nullable_sized_2),
11924 <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),
11925 ),
11926 encoder, offset, _depth
11927 )
11928 }
11929 }
11930 unsafe impl<
11931 T0: fidl::encoding::Encode<
11932 fidl::encoding::UnboundedVector<bool>,
11933 fidl::encoding::DefaultFuchsiaResourceDialect,
11934 >,
11935 T1: fidl::encoding::Encode<
11936 fidl::encoding::UnboundedVector<i8>,
11937 fidl::encoding::DefaultFuchsiaResourceDialect,
11938 >,
11939 T2: fidl::encoding::Encode<
11940 fidl::encoding::UnboundedVector<i16>,
11941 fidl::encoding::DefaultFuchsiaResourceDialect,
11942 >,
11943 T3: fidl::encoding::Encode<
11944 fidl::encoding::UnboundedVector<i32>,
11945 fidl::encoding::DefaultFuchsiaResourceDialect,
11946 >,
11947 T4: fidl::encoding::Encode<
11948 fidl::encoding::UnboundedVector<i64>,
11949 fidl::encoding::DefaultFuchsiaResourceDialect,
11950 >,
11951 T5: fidl::encoding::Encode<
11952 fidl::encoding::UnboundedVector<u8>,
11953 fidl::encoding::DefaultFuchsiaResourceDialect,
11954 >,
11955 T6: fidl::encoding::Encode<
11956 fidl::encoding::UnboundedVector<u16>,
11957 fidl::encoding::DefaultFuchsiaResourceDialect,
11958 >,
11959 T7: fidl::encoding::Encode<
11960 fidl::encoding::UnboundedVector<u32>,
11961 fidl::encoding::DefaultFuchsiaResourceDialect,
11962 >,
11963 T8: fidl::encoding::Encode<
11964 fidl::encoding::UnboundedVector<u64>,
11965 fidl::encoding::DefaultFuchsiaResourceDialect,
11966 >,
11967 T9: fidl::encoding::Encode<
11968 fidl::encoding::UnboundedVector<f32>,
11969 fidl::encoding::DefaultFuchsiaResourceDialect,
11970 >,
11971 T10: fidl::encoding::Encode<
11972 fidl::encoding::UnboundedVector<f64>,
11973 fidl::encoding::DefaultFuchsiaResourceDialect,
11974 >,
11975 T11: fidl::encoding::Encode<
11976 fidl::encoding::UnboundedVector<
11977 fidl::encoding::HandleType<
11978 fidl::NullableHandle,
11979 { fidl::ObjectType::NONE.into_raw() },
11980 2147483648,
11981 >,
11982 >,
11983 fidl::encoding::DefaultFuchsiaResourceDialect,
11984 >,
11985 T12: fidl::encoding::Encode<
11986 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
11987 fidl::encoding::DefaultFuchsiaResourceDialect,
11988 >,
11989 T13: fidl::encoding::Encode<
11990 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
11991 fidl::encoding::DefaultFuchsiaResourceDialect,
11992 >,
11993 T14: fidl::encoding::Encode<
11994 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
11995 fidl::encoding::DefaultFuchsiaResourceDialect,
11996 >,
11997 T15: fidl::encoding::Encode<
11998 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
11999 fidl::encoding::DefaultFuchsiaResourceDialect,
12000 >,
12001 T16: fidl::encoding::Encode<
12002 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12003 fidl::encoding::DefaultFuchsiaResourceDialect,
12004 >,
12005 T17: fidl::encoding::Encode<
12006 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12007 fidl::encoding::DefaultFuchsiaResourceDialect,
12008 >,
12009 T18: fidl::encoding::Encode<
12010 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12011 fidl::encoding::DefaultFuchsiaResourceDialect,
12012 >,
12013 T19: fidl::encoding::Encode<
12014 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12015 fidl::encoding::DefaultFuchsiaResourceDialect,
12016 >,
12017 T20: fidl::encoding::Encode<
12018 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12019 fidl::encoding::DefaultFuchsiaResourceDialect,
12020 >,
12021 T21: fidl::encoding::Encode<
12022 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12023 fidl::encoding::DefaultFuchsiaResourceDialect,
12024 >,
12025 T22: fidl::encoding::Encode<
12026 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12027 fidl::encoding::DefaultFuchsiaResourceDialect,
12028 >,
12029 T23: fidl::encoding::Encode<
12030 fidl::encoding::UnboundedVector<
12031 fidl::encoding::Vector<
12032 fidl::encoding::HandleType<
12033 fidl::NullableHandle,
12034 { fidl::ObjectType::NONE.into_raw() },
12035 2147483648,
12036 >,
12037 2,
12038 >,
12039 >,
12040 fidl::encoding::DefaultFuchsiaResourceDialect,
12041 >,
12042 T24: fidl::encoding::Encode<
12043 fidl::encoding::Vector<bool, 1>,
12044 fidl::encoding::DefaultFuchsiaResourceDialect,
12045 >,
12046 T25: fidl::encoding::Encode<
12047 fidl::encoding::Vector<i8, 1>,
12048 fidl::encoding::DefaultFuchsiaResourceDialect,
12049 >,
12050 T26: fidl::encoding::Encode<
12051 fidl::encoding::Vector<i16, 1>,
12052 fidl::encoding::DefaultFuchsiaResourceDialect,
12053 >,
12054 T27: fidl::encoding::Encode<
12055 fidl::encoding::Vector<i32, 1>,
12056 fidl::encoding::DefaultFuchsiaResourceDialect,
12057 >,
12058 T28: fidl::encoding::Encode<
12059 fidl::encoding::Vector<i64, 1>,
12060 fidl::encoding::DefaultFuchsiaResourceDialect,
12061 >,
12062 T29: fidl::encoding::Encode<
12063 fidl::encoding::Vector<u8, 1>,
12064 fidl::encoding::DefaultFuchsiaResourceDialect,
12065 >,
12066 T30: fidl::encoding::Encode<
12067 fidl::encoding::Vector<u16, 1>,
12068 fidl::encoding::DefaultFuchsiaResourceDialect,
12069 >,
12070 T31: fidl::encoding::Encode<
12071 fidl::encoding::Vector<u32, 1>,
12072 fidl::encoding::DefaultFuchsiaResourceDialect,
12073 >,
12074 T32: fidl::encoding::Encode<
12075 fidl::encoding::Vector<u64, 1>,
12076 fidl::encoding::DefaultFuchsiaResourceDialect,
12077 >,
12078 T33: fidl::encoding::Encode<
12079 fidl::encoding::Vector<f32, 1>,
12080 fidl::encoding::DefaultFuchsiaResourceDialect,
12081 >,
12082 T34: fidl::encoding::Encode<
12083 fidl::encoding::Vector<f64, 1>,
12084 fidl::encoding::DefaultFuchsiaResourceDialect,
12085 >,
12086 T35: fidl::encoding::Encode<
12087 fidl::encoding::Vector<
12088 fidl::encoding::HandleType<
12089 fidl::NullableHandle,
12090 { fidl::ObjectType::NONE.into_raw() },
12091 2147483648,
12092 >,
12093 1,
12094 >,
12095 fidl::encoding::DefaultFuchsiaResourceDialect,
12096 >,
12097 T36: fidl::encoding::Encode<
12098 fidl::encoding::Vector<bool, 3>,
12099 fidl::encoding::DefaultFuchsiaResourceDialect,
12100 >,
12101 T37: fidl::encoding::Encode<
12102 fidl::encoding::Vector<i8, 3>,
12103 fidl::encoding::DefaultFuchsiaResourceDialect,
12104 >,
12105 T38: fidl::encoding::Encode<
12106 fidl::encoding::Vector<i16, 3>,
12107 fidl::encoding::DefaultFuchsiaResourceDialect,
12108 >,
12109 T39: fidl::encoding::Encode<
12110 fidl::encoding::Vector<i32, 3>,
12111 fidl::encoding::DefaultFuchsiaResourceDialect,
12112 >,
12113 T40: fidl::encoding::Encode<
12114 fidl::encoding::Vector<i64, 3>,
12115 fidl::encoding::DefaultFuchsiaResourceDialect,
12116 >,
12117 T41: fidl::encoding::Encode<
12118 fidl::encoding::Vector<u8, 3>,
12119 fidl::encoding::DefaultFuchsiaResourceDialect,
12120 >,
12121 T42: fidl::encoding::Encode<
12122 fidl::encoding::Vector<u16, 3>,
12123 fidl::encoding::DefaultFuchsiaResourceDialect,
12124 >,
12125 T43: fidl::encoding::Encode<
12126 fidl::encoding::Vector<u32, 3>,
12127 fidl::encoding::DefaultFuchsiaResourceDialect,
12128 >,
12129 T44: fidl::encoding::Encode<
12130 fidl::encoding::Vector<u64, 3>,
12131 fidl::encoding::DefaultFuchsiaResourceDialect,
12132 >,
12133 T45: fidl::encoding::Encode<
12134 fidl::encoding::Vector<f32, 3>,
12135 fidl::encoding::DefaultFuchsiaResourceDialect,
12136 >,
12137 T46: fidl::encoding::Encode<
12138 fidl::encoding::Vector<f64, 3>,
12139 fidl::encoding::DefaultFuchsiaResourceDialect,
12140 >,
12141 T47: fidl::encoding::Encode<
12142 fidl::encoding::Vector<
12143 fidl::encoding::HandleType<
12144 fidl::NullableHandle,
12145 { fidl::ObjectType::NONE.into_raw() },
12146 2147483648,
12147 >,
12148 3,
12149 >,
12150 fidl::encoding::DefaultFuchsiaResourceDialect,
12151 >,
12152 T48: fidl::encoding::Encode<
12153 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12154 fidl::encoding::DefaultFuchsiaResourceDialect,
12155 >,
12156 T49: fidl::encoding::Encode<
12157 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
12158 fidl::encoding::DefaultFuchsiaResourceDialect,
12159 >,
12160 T50: fidl::encoding::Encode<
12161 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
12162 fidl::encoding::DefaultFuchsiaResourceDialect,
12163 >,
12164 T51: fidl::encoding::Encode<
12165 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
12166 fidl::encoding::DefaultFuchsiaResourceDialect,
12167 >,
12168 T52: fidl::encoding::Encode<
12169 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
12170 fidl::encoding::DefaultFuchsiaResourceDialect,
12171 >,
12172 T53: fidl::encoding::Encode<
12173 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
12174 fidl::encoding::DefaultFuchsiaResourceDialect,
12175 >,
12176 T54: fidl::encoding::Encode<
12177 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
12178 fidl::encoding::DefaultFuchsiaResourceDialect,
12179 >,
12180 T55: fidl::encoding::Encode<
12181 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
12182 fidl::encoding::DefaultFuchsiaResourceDialect,
12183 >,
12184 T56: fidl::encoding::Encode<
12185 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
12186 fidl::encoding::DefaultFuchsiaResourceDialect,
12187 >,
12188 T57: fidl::encoding::Encode<
12189 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
12190 fidl::encoding::DefaultFuchsiaResourceDialect,
12191 >,
12192 T58: fidl::encoding::Encode<
12193 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
12194 fidl::encoding::DefaultFuchsiaResourceDialect,
12195 >,
12196 T59: fidl::encoding::Encode<
12197 fidl::encoding::Vector<
12198 fidl::encoding::Vector<
12199 fidl::encoding::HandleType<
12200 fidl::NullableHandle,
12201 { fidl::ObjectType::NONE.into_raw() },
12202 2147483648,
12203 >,
12204 2,
12205 >,
12206 3,
12207 >,
12208 fidl::encoding::DefaultFuchsiaResourceDialect,
12209 >,
12210 T60: fidl::encoding::Encode<
12211 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
12212 fidl::encoding::DefaultFuchsiaResourceDialect,
12213 >,
12214 T61: fidl::encoding::Encode<
12215 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
12216 fidl::encoding::DefaultFuchsiaResourceDialect,
12217 >,
12218 T62: fidl::encoding::Encode<
12219 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
12220 fidl::encoding::DefaultFuchsiaResourceDialect,
12221 >,
12222 T63: fidl::encoding::Encode<
12223 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
12224 fidl::encoding::DefaultFuchsiaResourceDialect,
12225 >,
12226 T64: fidl::encoding::Encode<
12227 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
12228 fidl::encoding::DefaultFuchsiaResourceDialect,
12229 >,
12230 T65: fidl::encoding::Encode<
12231 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
12232 fidl::encoding::DefaultFuchsiaResourceDialect,
12233 >,
12234 T66: fidl::encoding::Encode<
12235 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
12236 fidl::encoding::DefaultFuchsiaResourceDialect,
12237 >,
12238 T67: fidl::encoding::Encode<
12239 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
12240 fidl::encoding::DefaultFuchsiaResourceDialect,
12241 >,
12242 T68: fidl::encoding::Encode<
12243 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
12244 fidl::encoding::DefaultFuchsiaResourceDialect,
12245 >,
12246 T69: fidl::encoding::Encode<
12247 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
12248 fidl::encoding::DefaultFuchsiaResourceDialect,
12249 >,
12250 T70: fidl::encoding::Encode<
12251 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
12252 fidl::encoding::DefaultFuchsiaResourceDialect,
12253 >,
12254 T71: fidl::encoding::Encode<
12255 fidl::encoding::Optional<
12256 fidl::encoding::Vector<
12257 fidl::encoding::HandleType<
12258 fidl::NullableHandle,
12259 { fidl::ObjectType::NONE.into_raw() },
12260 2147483648,
12261 >,
12262 1,
12263 >,
12264 >,
12265 fidl::encoding::DefaultFuchsiaResourceDialect,
12266 >,
12267 T72: fidl::encoding::Encode<
12268 fidl::encoding::Optional<
12269 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12270 >,
12271 fidl::encoding::DefaultFuchsiaResourceDialect,
12272 >,
12273 T73: fidl::encoding::Encode<
12274 fidl::encoding::Optional<
12275 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12276 >,
12277 fidl::encoding::DefaultFuchsiaResourceDialect,
12278 >,
12279 T74: fidl::encoding::Encode<
12280 fidl::encoding::Optional<
12281 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12282 >,
12283 fidl::encoding::DefaultFuchsiaResourceDialect,
12284 >,
12285 T75: fidl::encoding::Encode<
12286 fidl::encoding::Optional<
12287 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12288 >,
12289 fidl::encoding::DefaultFuchsiaResourceDialect,
12290 >,
12291 T76: fidl::encoding::Encode<
12292 fidl::encoding::Optional<
12293 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12294 >,
12295 fidl::encoding::DefaultFuchsiaResourceDialect,
12296 >,
12297 T77: fidl::encoding::Encode<
12298 fidl::encoding::Optional<
12299 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12300 >,
12301 fidl::encoding::DefaultFuchsiaResourceDialect,
12302 >,
12303 T78: fidl::encoding::Encode<
12304 fidl::encoding::Optional<
12305 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12306 >,
12307 fidl::encoding::DefaultFuchsiaResourceDialect,
12308 >,
12309 T79: fidl::encoding::Encode<
12310 fidl::encoding::Optional<
12311 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12312 >,
12313 fidl::encoding::DefaultFuchsiaResourceDialect,
12314 >,
12315 T80: fidl::encoding::Encode<
12316 fidl::encoding::Optional<
12317 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12318 >,
12319 fidl::encoding::DefaultFuchsiaResourceDialect,
12320 >,
12321 T81: fidl::encoding::Encode<
12322 fidl::encoding::Optional<
12323 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12324 >,
12325 fidl::encoding::DefaultFuchsiaResourceDialect,
12326 >,
12327 T82: fidl::encoding::Encode<
12328 fidl::encoding::Optional<
12329 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12330 >,
12331 fidl::encoding::DefaultFuchsiaResourceDialect,
12332 >,
12333 T83: fidl::encoding::Encode<
12334 fidl::encoding::Optional<
12335 fidl::encoding::UnboundedVector<
12336 fidl::encoding::Vector<
12337 fidl::encoding::HandleType<
12338 fidl::NullableHandle,
12339 { fidl::ObjectType::NONE.into_raw() },
12340 2147483648,
12341 >,
12342 2,
12343 >,
12344 >,
12345 >,
12346 fidl::encoding::DefaultFuchsiaResourceDialect,
12347 >,
12348 T84: fidl::encoding::Encode<
12349 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
12350 fidl::encoding::DefaultFuchsiaResourceDialect,
12351 >,
12352 T85: fidl::encoding::Encode<
12353 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
12354 fidl::encoding::DefaultFuchsiaResourceDialect,
12355 >,
12356 T86: fidl::encoding::Encode<
12357 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
12358 fidl::encoding::DefaultFuchsiaResourceDialect,
12359 >,
12360 T87: fidl::encoding::Encode<
12361 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
12362 fidl::encoding::DefaultFuchsiaResourceDialect,
12363 >,
12364 T88: fidl::encoding::Encode<
12365 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
12366 fidl::encoding::DefaultFuchsiaResourceDialect,
12367 >,
12368 T89: fidl::encoding::Encode<
12369 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
12370 fidl::encoding::DefaultFuchsiaResourceDialect,
12371 >,
12372 T90: fidl::encoding::Encode<
12373 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
12374 fidl::encoding::DefaultFuchsiaResourceDialect,
12375 >,
12376 T91: fidl::encoding::Encode<
12377 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
12378 fidl::encoding::DefaultFuchsiaResourceDialect,
12379 >,
12380 T92: fidl::encoding::Encode<
12381 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
12382 fidl::encoding::DefaultFuchsiaResourceDialect,
12383 >,
12384 T93: fidl::encoding::Encode<
12385 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
12386 fidl::encoding::DefaultFuchsiaResourceDialect,
12387 >,
12388 T94: fidl::encoding::Encode<
12389 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
12390 fidl::encoding::DefaultFuchsiaResourceDialect,
12391 >,
12392 T95: fidl::encoding::Encode<
12393 fidl::encoding::Optional<
12394 fidl::encoding::Vector<
12395 fidl::encoding::HandleType<
12396 fidl::NullableHandle,
12397 { fidl::ObjectType::NONE.into_raw() },
12398 2147483648,
12399 >,
12400 1,
12401 >,
12402 >,
12403 fidl::encoding::DefaultFuchsiaResourceDialect,
12404 >,
12405 T96: fidl::encoding::Encode<
12406 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
12407 fidl::encoding::DefaultFuchsiaResourceDialect,
12408 >,
12409 T97: fidl::encoding::Encode<
12410 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
12411 fidl::encoding::DefaultFuchsiaResourceDialect,
12412 >,
12413 T98: fidl::encoding::Encode<
12414 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
12415 fidl::encoding::DefaultFuchsiaResourceDialect,
12416 >,
12417 T99: fidl::encoding::Encode<
12418 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
12419 fidl::encoding::DefaultFuchsiaResourceDialect,
12420 >,
12421 T100: fidl::encoding::Encode<
12422 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
12423 fidl::encoding::DefaultFuchsiaResourceDialect,
12424 >,
12425 T101: fidl::encoding::Encode<
12426 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
12427 fidl::encoding::DefaultFuchsiaResourceDialect,
12428 >,
12429 T102: fidl::encoding::Encode<
12430 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
12431 fidl::encoding::DefaultFuchsiaResourceDialect,
12432 >,
12433 T103: fidl::encoding::Encode<
12434 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
12435 fidl::encoding::DefaultFuchsiaResourceDialect,
12436 >,
12437 T104: fidl::encoding::Encode<
12438 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
12439 fidl::encoding::DefaultFuchsiaResourceDialect,
12440 >,
12441 T105: fidl::encoding::Encode<
12442 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
12443 fidl::encoding::DefaultFuchsiaResourceDialect,
12444 >,
12445 T106: fidl::encoding::Encode<
12446 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
12447 fidl::encoding::DefaultFuchsiaResourceDialect,
12448 >,
12449 T107: fidl::encoding::Encode<
12450 fidl::encoding::Optional<
12451 fidl::encoding::Vector<
12452 fidl::encoding::HandleType<
12453 fidl::NullableHandle,
12454 { fidl::ObjectType::NONE.into_raw() },
12455 2147483648,
12456 >,
12457 3,
12458 >,
12459 >,
12460 fidl::encoding::DefaultFuchsiaResourceDialect,
12461 >,
12462 T108: fidl::encoding::Encode<
12463 fidl::encoding::Optional<
12464 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12465 >,
12466 fidl::encoding::DefaultFuchsiaResourceDialect,
12467 >,
12468 T109: fidl::encoding::Encode<
12469 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>>,
12470 fidl::encoding::DefaultFuchsiaResourceDialect,
12471 >,
12472 T110: fidl::encoding::Encode<
12473 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>>,
12474 fidl::encoding::DefaultFuchsiaResourceDialect,
12475 >,
12476 T111: fidl::encoding::Encode<
12477 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>>,
12478 fidl::encoding::DefaultFuchsiaResourceDialect,
12479 >,
12480 T112: fidl::encoding::Encode<
12481 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>>,
12482 fidl::encoding::DefaultFuchsiaResourceDialect,
12483 >,
12484 T113: fidl::encoding::Encode<
12485 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>>,
12486 fidl::encoding::DefaultFuchsiaResourceDialect,
12487 >,
12488 T114: fidl::encoding::Encode<
12489 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>>,
12490 fidl::encoding::DefaultFuchsiaResourceDialect,
12491 >,
12492 T115: fidl::encoding::Encode<
12493 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>>,
12494 fidl::encoding::DefaultFuchsiaResourceDialect,
12495 >,
12496 T116: fidl::encoding::Encode<
12497 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>>,
12498 fidl::encoding::DefaultFuchsiaResourceDialect,
12499 >,
12500 T117: fidl::encoding::Encode<
12501 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>>,
12502 fidl::encoding::DefaultFuchsiaResourceDialect,
12503 >,
12504 T118: fidl::encoding::Encode<
12505 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>>,
12506 fidl::encoding::DefaultFuchsiaResourceDialect,
12507 >,
12508 T119: fidl::encoding::Encode<
12509 fidl::encoding::Optional<
12510 fidl::encoding::Vector<
12511 fidl::encoding::Vector<
12512 fidl::encoding::HandleType<
12513 fidl::NullableHandle,
12514 { fidl::ObjectType::NONE.into_raw() },
12515 2147483648,
12516 >,
12517 2,
12518 >,
12519 3,
12520 >,
12521 >,
12522 fidl::encoding::DefaultFuchsiaResourceDialect,
12523 >,
12524 > fidl::encoding::Encode<Vectors, fidl::encoding::DefaultFuchsiaResourceDialect>
12525 for (
12526 T0,
12527 T1,
12528 T2,
12529 T3,
12530 T4,
12531 T5,
12532 T6,
12533 T7,
12534 T8,
12535 T9,
12536 T10,
12537 T11,
12538 T12,
12539 T13,
12540 T14,
12541 T15,
12542 T16,
12543 T17,
12544 T18,
12545 T19,
12546 T20,
12547 T21,
12548 T22,
12549 T23,
12550 T24,
12551 T25,
12552 T26,
12553 T27,
12554 T28,
12555 T29,
12556 T30,
12557 T31,
12558 T32,
12559 T33,
12560 T34,
12561 T35,
12562 T36,
12563 T37,
12564 T38,
12565 T39,
12566 T40,
12567 T41,
12568 T42,
12569 T43,
12570 T44,
12571 T45,
12572 T46,
12573 T47,
12574 T48,
12575 T49,
12576 T50,
12577 T51,
12578 T52,
12579 T53,
12580 T54,
12581 T55,
12582 T56,
12583 T57,
12584 T58,
12585 T59,
12586 T60,
12587 T61,
12588 T62,
12589 T63,
12590 T64,
12591 T65,
12592 T66,
12593 T67,
12594 T68,
12595 T69,
12596 T70,
12597 T71,
12598 T72,
12599 T73,
12600 T74,
12601 T75,
12602 T76,
12603 T77,
12604 T78,
12605 T79,
12606 T80,
12607 T81,
12608 T82,
12609 T83,
12610 T84,
12611 T85,
12612 T86,
12613 T87,
12614 T88,
12615 T89,
12616 T90,
12617 T91,
12618 T92,
12619 T93,
12620 T94,
12621 T95,
12622 T96,
12623 T97,
12624 T98,
12625 T99,
12626 T100,
12627 T101,
12628 T102,
12629 T103,
12630 T104,
12631 T105,
12632 T106,
12633 T107,
12634 T108,
12635 T109,
12636 T110,
12637 T111,
12638 T112,
12639 T113,
12640 T114,
12641 T115,
12642 T116,
12643 T117,
12644 T118,
12645 T119,
12646 )
12647 {
12648 #[inline]
12649 unsafe fn encode(
12650 self,
12651 encoder: &mut fidl::encoding::Encoder<
12652 '_,
12653 fidl::encoding::DefaultFuchsiaResourceDialect,
12654 >,
12655 offset: usize,
12656 depth: fidl::encoding::Depth,
12657 ) -> fidl::Result<()> {
12658 encoder.debug_check_bounds::<Vectors>(offset);
12659 self.0.encode(encoder, offset + 0, depth)?;
12663 self.1.encode(encoder, offset + 16, depth)?;
12664 self.2.encode(encoder, offset + 32, depth)?;
12665 self.3.encode(encoder, offset + 48, depth)?;
12666 self.4.encode(encoder, offset + 64, depth)?;
12667 self.5.encode(encoder, offset + 80, depth)?;
12668 self.6.encode(encoder, offset + 96, depth)?;
12669 self.7.encode(encoder, offset + 112, depth)?;
12670 self.8.encode(encoder, offset + 128, depth)?;
12671 self.9.encode(encoder, offset + 144, depth)?;
12672 self.10.encode(encoder, offset + 160, depth)?;
12673 self.11.encode(encoder, offset + 176, depth)?;
12674 self.12.encode(encoder, offset + 192, depth)?;
12675 self.13.encode(encoder, offset + 208, depth)?;
12676 self.14.encode(encoder, offset + 224, depth)?;
12677 self.15.encode(encoder, offset + 240, depth)?;
12678 self.16.encode(encoder, offset + 256, depth)?;
12679 self.17.encode(encoder, offset + 272, depth)?;
12680 self.18.encode(encoder, offset + 288, depth)?;
12681 self.19.encode(encoder, offset + 304, depth)?;
12682 self.20.encode(encoder, offset + 320, depth)?;
12683 self.21.encode(encoder, offset + 336, depth)?;
12684 self.22.encode(encoder, offset + 352, depth)?;
12685 self.23.encode(encoder, offset + 368, depth)?;
12686 self.24.encode(encoder, offset + 384, depth)?;
12687 self.25.encode(encoder, offset + 400, depth)?;
12688 self.26.encode(encoder, offset + 416, depth)?;
12689 self.27.encode(encoder, offset + 432, depth)?;
12690 self.28.encode(encoder, offset + 448, depth)?;
12691 self.29.encode(encoder, offset + 464, depth)?;
12692 self.30.encode(encoder, offset + 480, depth)?;
12693 self.31.encode(encoder, offset + 496, depth)?;
12694 self.32.encode(encoder, offset + 512, depth)?;
12695 self.33.encode(encoder, offset + 528, depth)?;
12696 self.34.encode(encoder, offset + 544, depth)?;
12697 self.35.encode(encoder, offset + 560, depth)?;
12698 self.36.encode(encoder, offset + 576, depth)?;
12699 self.37.encode(encoder, offset + 592, depth)?;
12700 self.38.encode(encoder, offset + 608, depth)?;
12701 self.39.encode(encoder, offset + 624, depth)?;
12702 self.40.encode(encoder, offset + 640, depth)?;
12703 self.41.encode(encoder, offset + 656, depth)?;
12704 self.42.encode(encoder, offset + 672, depth)?;
12705 self.43.encode(encoder, offset + 688, depth)?;
12706 self.44.encode(encoder, offset + 704, depth)?;
12707 self.45.encode(encoder, offset + 720, depth)?;
12708 self.46.encode(encoder, offset + 736, depth)?;
12709 self.47.encode(encoder, offset + 752, depth)?;
12710 self.48.encode(encoder, offset + 768, depth)?;
12711 self.49.encode(encoder, offset + 784, depth)?;
12712 self.50.encode(encoder, offset + 800, depth)?;
12713 self.51.encode(encoder, offset + 816, depth)?;
12714 self.52.encode(encoder, offset + 832, depth)?;
12715 self.53.encode(encoder, offset + 848, depth)?;
12716 self.54.encode(encoder, offset + 864, depth)?;
12717 self.55.encode(encoder, offset + 880, depth)?;
12718 self.56.encode(encoder, offset + 896, depth)?;
12719 self.57.encode(encoder, offset + 912, depth)?;
12720 self.58.encode(encoder, offset + 928, depth)?;
12721 self.59.encode(encoder, offset + 944, depth)?;
12722 self.60.encode(encoder, offset + 960, depth)?;
12723 self.61.encode(encoder, offset + 976, depth)?;
12724 self.62.encode(encoder, offset + 992, depth)?;
12725 self.63.encode(encoder, offset + 1008, depth)?;
12726 self.64.encode(encoder, offset + 1024, depth)?;
12727 self.65.encode(encoder, offset + 1040, depth)?;
12728 self.66.encode(encoder, offset + 1056, depth)?;
12729 self.67.encode(encoder, offset + 1072, depth)?;
12730 self.68.encode(encoder, offset + 1088, depth)?;
12731 self.69.encode(encoder, offset + 1104, depth)?;
12732 self.70.encode(encoder, offset + 1120, depth)?;
12733 self.71.encode(encoder, offset + 1136, depth)?;
12734 self.72.encode(encoder, offset + 1152, depth)?;
12735 self.73.encode(encoder, offset + 1168, depth)?;
12736 self.74.encode(encoder, offset + 1184, depth)?;
12737 self.75.encode(encoder, offset + 1200, depth)?;
12738 self.76.encode(encoder, offset + 1216, depth)?;
12739 self.77.encode(encoder, offset + 1232, depth)?;
12740 self.78.encode(encoder, offset + 1248, depth)?;
12741 self.79.encode(encoder, offset + 1264, depth)?;
12742 self.80.encode(encoder, offset + 1280, depth)?;
12743 self.81.encode(encoder, offset + 1296, depth)?;
12744 self.82.encode(encoder, offset + 1312, depth)?;
12745 self.83.encode(encoder, offset + 1328, depth)?;
12746 self.84.encode(encoder, offset + 1344, depth)?;
12747 self.85.encode(encoder, offset + 1360, depth)?;
12748 self.86.encode(encoder, offset + 1376, depth)?;
12749 self.87.encode(encoder, offset + 1392, depth)?;
12750 self.88.encode(encoder, offset + 1408, depth)?;
12751 self.89.encode(encoder, offset + 1424, depth)?;
12752 self.90.encode(encoder, offset + 1440, depth)?;
12753 self.91.encode(encoder, offset + 1456, depth)?;
12754 self.92.encode(encoder, offset + 1472, depth)?;
12755 self.93.encode(encoder, offset + 1488, depth)?;
12756 self.94.encode(encoder, offset + 1504, depth)?;
12757 self.95.encode(encoder, offset + 1520, depth)?;
12758 self.96.encode(encoder, offset + 1536, depth)?;
12759 self.97.encode(encoder, offset + 1552, depth)?;
12760 self.98.encode(encoder, offset + 1568, depth)?;
12761 self.99.encode(encoder, offset + 1584, depth)?;
12762 self.100.encode(encoder, offset + 1600, depth)?;
12763 self.101.encode(encoder, offset + 1616, depth)?;
12764 self.102.encode(encoder, offset + 1632, depth)?;
12765 self.103.encode(encoder, offset + 1648, depth)?;
12766 self.104.encode(encoder, offset + 1664, depth)?;
12767 self.105.encode(encoder, offset + 1680, depth)?;
12768 self.106.encode(encoder, offset + 1696, depth)?;
12769 self.107.encode(encoder, offset + 1712, depth)?;
12770 self.108.encode(encoder, offset + 1728, depth)?;
12771 self.109.encode(encoder, offset + 1744, depth)?;
12772 self.110.encode(encoder, offset + 1760, depth)?;
12773 self.111.encode(encoder, offset + 1776, depth)?;
12774 self.112.encode(encoder, offset + 1792, depth)?;
12775 self.113.encode(encoder, offset + 1808, depth)?;
12776 self.114.encode(encoder, offset + 1824, depth)?;
12777 self.115.encode(encoder, offset + 1840, depth)?;
12778 self.116.encode(encoder, offset + 1856, depth)?;
12779 self.117.encode(encoder, offset + 1872, depth)?;
12780 self.118.encode(encoder, offset + 1888, depth)?;
12781 self.119.encode(encoder, offset + 1904, depth)?;
12782 Ok(())
12783 }
12784 }
12785
12786 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for Vectors {
12787 #[inline(always)]
12788 fn new_empty() -> Self {
12789 Self {
12790 b_0: fidl::new_empty!(
12791 fidl::encoding::UnboundedVector<bool>,
12792 fidl::encoding::DefaultFuchsiaResourceDialect
12793 ),
12794 i8_0: fidl::new_empty!(
12795 fidl::encoding::UnboundedVector<i8>,
12796 fidl::encoding::DefaultFuchsiaResourceDialect
12797 ),
12798 i16_0: fidl::new_empty!(
12799 fidl::encoding::UnboundedVector<i16>,
12800 fidl::encoding::DefaultFuchsiaResourceDialect
12801 ),
12802 i32_0: fidl::new_empty!(
12803 fidl::encoding::UnboundedVector<i32>,
12804 fidl::encoding::DefaultFuchsiaResourceDialect
12805 ),
12806 i64_0: fidl::new_empty!(
12807 fidl::encoding::UnboundedVector<i64>,
12808 fidl::encoding::DefaultFuchsiaResourceDialect
12809 ),
12810 u8_0: fidl::new_empty!(
12811 fidl::encoding::UnboundedVector<u8>,
12812 fidl::encoding::DefaultFuchsiaResourceDialect
12813 ),
12814 u16_0: fidl::new_empty!(
12815 fidl::encoding::UnboundedVector<u16>,
12816 fidl::encoding::DefaultFuchsiaResourceDialect
12817 ),
12818 u32_0: fidl::new_empty!(
12819 fidl::encoding::UnboundedVector<u32>,
12820 fidl::encoding::DefaultFuchsiaResourceDialect
12821 ),
12822 u64_0: fidl::new_empty!(
12823 fidl::encoding::UnboundedVector<u64>,
12824 fidl::encoding::DefaultFuchsiaResourceDialect
12825 ),
12826 f32_0: fidl::new_empty!(
12827 fidl::encoding::UnboundedVector<f32>,
12828 fidl::encoding::DefaultFuchsiaResourceDialect
12829 ),
12830 f64_0: fidl::new_empty!(
12831 fidl::encoding::UnboundedVector<f64>,
12832 fidl::encoding::DefaultFuchsiaResourceDialect
12833 ),
12834 handle_0: fidl::new_empty!(
12835 fidl::encoding::UnboundedVector<
12836 fidl::encoding::HandleType<
12837 fidl::NullableHandle,
12838 { fidl::ObjectType::NONE.into_raw() },
12839 2147483648,
12840 >,
12841 >,
12842 fidl::encoding::DefaultFuchsiaResourceDialect
12843 ),
12844 b_1: fidl::new_empty!(
12845 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
12846 fidl::encoding::DefaultFuchsiaResourceDialect
12847 ),
12848 i8_1: fidl::new_empty!(
12849 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
12850 fidl::encoding::DefaultFuchsiaResourceDialect
12851 ),
12852 i16_1: fidl::new_empty!(
12853 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
12854 fidl::encoding::DefaultFuchsiaResourceDialect
12855 ),
12856 i32_1: fidl::new_empty!(
12857 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
12858 fidl::encoding::DefaultFuchsiaResourceDialect
12859 ),
12860 i64_1: fidl::new_empty!(
12861 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
12862 fidl::encoding::DefaultFuchsiaResourceDialect
12863 ),
12864 u8_1: fidl::new_empty!(
12865 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
12866 fidl::encoding::DefaultFuchsiaResourceDialect
12867 ),
12868 u16_1: fidl::new_empty!(
12869 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
12870 fidl::encoding::DefaultFuchsiaResourceDialect
12871 ),
12872 u32_1: fidl::new_empty!(
12873 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
12874 fidl::encoding::DefaultFuchsiaResourceDialect
12875 ),
12876 u64_1: fidl::new_empty!(
12877 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
12878 fidl::encoding::DefaultFuchsiaResourceDialect
12879 ),
12880 f32_1: fidl::new_empty!(
12881 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
12882 fidl::encoding::DefaultFuchsiaResourceDialect
12883 ),
12884 f64_1: fidl::new_empty!(
12885 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
12886 fidl::encoding::DefaultFuchsiaResourceDialect
12887 ),
12888 handle_1: fidl::new_empty!(
12889 fidl::encoding::UnboundedVector<
12890 fidl::encoding::Vector<
12891 fidl::encoding::HandleType<
12892 fidl::NullableHandle,
12893 { fidl::ObjectType::NONE.into_raw() },
12894 2147483648,
12895 >,
12896 2,
12897 >,
12898 >,
12899 fidl::encoding::DefaultFuchsiaResourceDialect
12900 ),
12901 b_sized_0: fidl::new_empty!(fidl::encoding::Vector<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12902 i8_sized_0: fidl::new_empty!(fidl::encoding::Vector<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12903 i16_sized_0: fidl::new_empty!(fidl::encoding::Vector<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12904 i32_sized_0: fidl::new_empty!(fidl::encoding::Vector<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12905 i64_sized_0: fidl::new_empty!(fidl::encoding::Vector<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12906 u8_sized_0: fidl::new_empty!(fidl::encoding::Vector<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12907 u16_sized_0: fidl::new_empty!(fidl::encoding::Vector<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12908 u32_sized_0: fidl::new_empty!(fidl::encoding::Vector<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12909 u64_sized_0: fidl::new_empty!(fidl::encoding::Vector<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12910 f32_sized_0: fidl::new_empty!(fidl::encoding::Vector<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12911 f64_sized_0: fidl::new_empty!(fidl::encoding::Vector<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect),
12912 handle_sized_0: fidl::new_empty!(
12913 fidl::encoding::Vector<
12914 fidl::encoding::HandleType<
12915 fidl::NullableHandle,
12916 { fidl::ObjectType::NONE.into_raw() },
12917 2147483648,
12918 >,
12919 1,
12920 >,
12921 fidl::encoding::DefaultFuchsiaResourceDialect
12922 ),
12923 b_sized_1: fidl::new_empty!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12924 i8_sized_1: fidl::new_empty!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12925 i16_sized_1: fidl::new_empty!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12926 i32_sized_1: fidl::new_empty!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12927 i64_sized_1: fidl::new_empty!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12928 u8_sized_1: fidl::new_empty!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12929 u16_sized_1: fidl::new_empty!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12930 u32_sized_1: fidl::new_empty!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12931 u64_sized_1: fidl::new_empty!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12932 f32_sized_1: fidl::new_empty!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12933 f64_sized_1: fidl::new_empty!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
12934 handle_sized_1: fidl::new_empty!(
12935 fidl::encoding::Vector<
12936 fidl::encoding::HandleType<
12937 fidl::NullableHandle,
12938 { fidl::ObjectType::NONE.into_raw() },
12939 2147483648,
12940 >,
12941 3,
12942 >,
12943 fidl::encoding::DefaultFuchsiaResourceDialect
12944 ),
12945 b_sized_2: fidl::new_empty!(
12946 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
12947 fidl::encoding::DefaultFuchsiaResourceDialect
12948 ),
12949 i8_sized_2: fidl::new_empty!(
12950 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
12951 fidl::encoding::DefaultFuchsiaResourceDialect
12952 ),
12953 i16_sized_2: fidl::new_empty!(
12954 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
12955 fidl::encoding::DefaultFuchsiaResourceDialect
12956 ),
12957 i32_sized_2: fidl::new_empty!(
12958 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
12959 fidl::encoding::DefaultFuchsiaResourceDialect
12960 ),
12961 i64_sized_2: fidl::new_empty!(
12962 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
12963 fidl::encoding::DefaultFuchsiaResourceDialect
12964 ),
12965 u8_sized_2: fidl::new_empty!(
12966 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
12967 fidl::encoding::DefaultFuchsiaResourceDialect
12968 ),
12969 u16_sized_2: fidl::new_empty!(
12970 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
12971 fidl::encoding::DefaultFuchsiaResourceDialect
12972 ),
12973 u32_sized_2: fidl::new_empty!(
12974 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
12975 fidl::encoding::DefaultFuchsiaResourceDialect
12976 ),
12977 u64_sized_2: fidl::new_empty!(
12978 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
12979 fidl::encoding::DefaultFuchsiaResourceDialect
12980 ),
12981 f32_sized_2: fidl::new_empty!(
12982 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
12983 fidl::encoding::DefaultFuchsiaResourceDialect
12984 ),
12985 f64_sized_2: fidl::new_empty!(
12986 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
12987 fidl::encoding::DefaultFuchsiaResourceDialect
12988 ),
12989 handle_sized_2: fidl::new_empty!(
12990 fidl::encoding::Vector<
12991 fidl::encoding::Vector<
12992 fidl::encoding::HandleType<
12993 fidl::NullableHandle,
12994 { fidl::ObjectType::NONE.into_raw() },
12995 2147483648,
12996 >,
12997 2,
12998 >,
12999 3,
13000 >,
13001 fidl::encoding::DefaultFuchsiaResourceDialect
13002 ),
13003 b_nullable_0: fidl::new_empty!(
13004 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13005 fidl::encoding::DefaultFuchsiaResourceDialect
13006 ),
13007 i8_nullable_0: fidl::new_empty!(
13008 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13009 fidl::encoding::DefaultFuchsiaResourceDialect
13010 ),
13011 i16_nullable_0: fidl::new_empty!(
13012 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13013 fidl::encoding::DefaultFuchsiaResourceDialect
13014 ),
13015 i32_nullable_0: fidl::new_empty!(
13016 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13017 fidl::encoding::DefaultFuchsiaResourceDialect
13018 ),
13019 i64_nullable_0: fidl::new_empty!(
13020 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13021 fidl::encoding::DefaultFuchsiaResourceDialect
13022 ),
13023 u8_nullable_0: fidl::new_empty!(
13024 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13025 fidl::encoding::DefaultFuchsiaResourceDialect
13026 ),
13027 u16_nullable_0: fidl::new_empty!(
13028 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13029 fidl::encoding::DefaultFuchsiaResourceDialect
13030 ),
13031 u32_nullable_0: fidl::new_empty!(
13032 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13033 fidl::encoding::DefaultFuchsiaResourceDialect
13034 ),
13035 u64_nullable_0: fidl::new_empty!(
13036 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13037 fidl::encoding::DefaultFuchsiaResourceDialect
13038 ),
13039 f32_nullable_0: fidl::new_empty!(
13040 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13041 fidl::encoding::DefaultFuchsiaResourceDialect
13042 ),
13043 f64_nullable_0: fidl::new_empty!(
13044 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13045 fidl::encoding::DefaultFuchsiaResourceDialect
13046 ),
13047 handle_nullable_0: fidl::new_empty!(
13048 fidl::encoding::Optional<
13049 fidl::encoding::Vector<
13050 fidl::encoding::HandleType<
13051 fidl::NullableHandle,
13052 { fidl::ObjectType::NONE.into_raw() },
13053 2147483648,
13054 >,
13055 1,
13056 >,
13057 >,
13058 fidl::encoding::DefaultFuchsiaResourceDialect
13059 ),
13060 b_nullable_1: fidl::new_empty!(
13061 fidl::encoding::Optional<
13062 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13063 >,
13064 fidl::encoding::DefaultFuchsiaResourceDialect
13065 ),
13066 i8_nullable_1: fidl::new_empty!(
13067 fidl::encoding::Optional<
13068 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13069 >,
13070 fidl::encoding::DefaultFuchsiaResourceDialect
13071 ),
13072 i16_nullable_1: fidl::new_empty!(
13073 fidl::encoding::Optional<
13074 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13075 >,
13076 fidl::encoding::DefaultFuchsiaResourceDialect
13077 ),
13078 i32_nullable_1: fidl::new_empty!(
13079 fidl::encoding::Optional<
13080 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13081 >,
13082 fidl::encoding::DefaultFuchsiaResourceDialect
13083 ),
13084 i64_nullable_1: fidl::new_empty!(
13085 fidl::encoding::Optional<
13086 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13087 >,
13088 fidl::encoding::DefaultFuchsiaResourceDialect
13089 ),
13090 u8_nullable_1: fidl::new_empty!(
13091 fidl::encoding::Optional<
13092 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13093 >,
13094 fidl::encoding::DefaultFuchsiaResourceDialect
13095 ),
13096 u16_nullable_1: fidl::new_empty!(
13097 fidl::encoding::Optional<
13098 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13099 >,
13100 fidl::encoding::DefaultFuchsiaResourceDialect
13101 ),
13102 u32_nullable_1: fidl::new_empty!(
13103 fidl::encoding::Optional<
13104 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13105 >,
13106 fidl::encoding::DefaultFuchsiaResourceDialect
13107 ),
13108 u64_nullable_1: fidl::new_empty!(
13109 fidl::encoding::Optional<
13110 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13111 >,
13112 fidl::encoding::DefaultFuchsiaResourceDialect
13113 ),
13114 f32_nullable_1: fidl::new_empty!(
13115 fidl::encoding::Optional<
13116 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13117 >,
13118 fidl::encoding::DefaultFuchsiaResourceDialect
13119 ),
13120 f64_nullable_1: fidl::new_empty!(
13121 fidl::encoding::Optional<
13122 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13123 >,
13124 fidl::encoding::DefaultFuchsiaResourceDialect
13125 ),
13126 handle_nullable_1: fidl::new_empty!(
13127 fidl::encoding::Optional<
13128 fidl::encoding::UnboundedVector<
13129 fidl::encoding::Vector<
13130 fidl::encoding::HandleType<
13131 fidl::NullableHandle,
13132 { fidl::ObjectType::NONE.into_raw() },
13133 2147483648,
13134 >,
13135 2,
13136 >,
13137 >,
13138 >,
13139 fidl::encoding::DefaultFuchsiaResourceDialect
13140 ),
13141 b_nullable_sized_0: fidl::new_empty!(
13142 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13143 fidl::encoding::DefaultFuchsiaResourceDialect
13144 ),
13145 i8_nullable_sized_0: fidl::new_empty!(
13146 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13147 fidl::encoding::DefaultFuchsiaResourceDialect
13148 ),
13149 i16_nullable_sized_0: fidl::new_empty!(
13150 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13151 fidl::encoding::DefaultFuchsiaResourceDialect
13152 ),
13153 i32_nullable_sized_0: fidl::new_empty!(
13154 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13155 fidl::encoding::DefaultFuchsiaResourceDialect
13156 ),
13157 i64_nullable_sized_0: fidl::new_empty!(
13158 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13159 fidl::encoding::DefaultFuchsiaResourceDialect
13160 ),
13161 u8_nullable_sized_0: fidl::new_empty!(
13162 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13163 fidl::encoding::DefaultFuchsiaResourceDialect
13164 ),
13165 u16_nullable_sized_0: fidl::new_empty!(
13166 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13167 fidl::encoding::DefaultFuchsiaResourceDialect
13168 ),
13169 u32_nullable_sized_0: fidl::new_empty!(
13170 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13171 fidl::encoding::DefaultFuchsiaResourceDialect
13172 ),
13173 u64_nullable_sized_0: fidl::new_empty!(
13174 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13175 fidl::encoding::DefaultFuchsiaResourceDialect
13176 ),
13177 f32_nullable_sized_0: fidl::new_empty!(
13178 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13179 fidl::encoding::DefaultFuchsiaResourceDialect
13180 ),
13181 f64_nullable_sized_0: fidl::new_empty!(
13182 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13183 fidl::encoding::DefaultFuchsiaResourceDialect
13184 ),
13185 handle_nullable_sized_0: fidl::new_empty!(
13186 fidl::encoding::Optional<
13187 fidl::encoding::Vector<
13188 fidl::encoding::HandleType<
13189 fidl::NullableHandle,
13190 { fidl::ObjectType::NONE.into_raw() },
13191 2147483648,
13192 >,
13193 1,
13194 >,
13195 >,
13196 fidl::encoding::DefaultFuchsiaResourceDialect
13197 ),
13198 b_nullable_sized_1: fidl::new_empty!(
13199 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
13200 fidl::encoding::DefaultFuchsiaResourceDialect
13201 ),
13202 i8_nullable_sized_1: fidl::new_empty!(
13203 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
13204 fidl::encoding::DefaultFuchsiaResourceDialect
13205 ),
13206 i16_nullable_sized_1: fidl::new_empty!(
13207 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
13208 fidl::encoding::DefaultFuchsiaResourceDialect
13209 ),
13210 i32_nullable_sized_1: fidl::new_empty!(
13211 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
13212 fidl::encoding::DefaultFuchsiaResourceDialect
13213 ),
13214 i64_nullable_sized_1: fidl::new_empty!(
13215 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
13216 fidl::encoding::DefaultFuchsiaResourceDialect
13217 ),
13218 u8_nullable_sized_1: fidl::new_empty!(
13219 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
13220 fidl::encoding::DefaultFuchsiaResourceDialect
13221 ),
13222 u16_nullable_sized_1: fidl::new_empty!(
13223 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
13224 fidl::encoding::DefaultFuchsiaResourceDialect
13225 ),
13226 u32_nullable_sized_1: fidl::new_empty!(
13227 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
13228 fidl::encoding::DefaultFuchsiaResourceDialect
13229 ),
13230 u64_nullable_sized_1: fidl::new_empty!(
13231 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
13232 fidl::encoding::DefaultFuchsiaResourceDialect
13233 ),
13234 f32_nullable_sized_1: fidl::new_empty!(
13235 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
13236 fidl::encoding::DefaultFuchsiaResourceDialect
13237 ),
13238 f64_nullable_sized_1: fidl::new_empty!(
13239 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
13240 fidl::encoding::DefaultFuchsiaResourceDialect
13241 ),
13242 handle_nullable_sized_1: fidl::new_empty!(
13243 fidl::encoding::Optional<
13244 fidl::encoding::Vector<
13245 fidl::encoding::HandleType<
13246 fidl::NullableHandle,
13247 { fidl::ObjectType::NONE.into_raw() },
13248 2147483648,
13249 >,
13250 3,
13251 >,
13252 >,
13253 fidl::encoding::DefaultFuchsiaResourceDialect
13254 ),
13255 b_nullable_sized_2: fidl::new_empty!(
13256 fidl::encoding::Optional<
13257 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
13258 >,
13259 fidl::encoding::DefaultFuchsiaResourceDialect
13260 ),
13261 i8_nullable_sized_2: fidl::new_empty!(
13262 fidl::encoding::Optional<
13263 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
13264 >,
13265 fidl::encoding::DefaultFuchsiaResourceDialect
13266 ),
13267 i16_nullable_sized_2: fidl::new_empty!(
13268 fidl::encoding::Optional<
13269 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
13270 >,
13271 fidl::encoding::DefaultFuchsiaResourceDialect
13272 ),
13273 i32_nullable_sized_2: fidl::new_empty!(
13274 fidl::encoding::Optional<
13275 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
13276 >,
13277 fidl::encoding::DefaultFuchsiaResourceDialect
13278 ),
13279 i64_nullable_sized_2: fidl::new_empty!(
13280 fidl::encoding::Optional<
13281 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
13282 >,
13283 fidl::encoding::DefaultFuchsiaResourceDialect
13284 ),
13285 u8_nullable_sized_2: fidl::new_empty!(
13286 fidl::encoding::Optional<
13287 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
13288 >,
13289 fidl::encoding::DefaultFuchsiaResourceDialect
13290 ),
13291 u16_nullable_sized_2: fidl::new_empty!(
13292 fidl::encoding::Optional<
13293 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
13294 >,
13295 fidl::encoding::DefaultFuchsiaResourceDialect
13296 ),
13297 u32_nullable_sized_2: fidl::new_empty!(
13298 fidl::encoding::Optional<
13299 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
13300 >,
13301 fidl::encoding::DefaultFuchsiaResourceDialect
13302 ),
13303 u64_nullable_sized_2: fidl::new_empty!(
13304 fidl::encoding::Optional<
13305 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
13306 >,
13307 fidl::encoding::DefaultFuchsiaResourceDialect
13308 ),
13309 f32_nullable_sized_2: fidl::new_empty!(
13310 fidl::encoding::Optional<
13311 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13312 >,
13313 fidl::encoding::DefaultFuchsiaResourceDialect
13314 ),
13315 f64_nullable_sized_2: fidl::new_empty!(
13316 fidl::encoding::Optional<
13317 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13318 >,
13319 fidl::encoding::DefaultFuchsiaResourceDialect
13320 ),
13321 handle_nullable_sized_2: fidl::new_empty!(
13322 fidl::encoding::Optional<
13323 fidl::encoding::Vector<
13324 fidl::encoding::Vector<
13325 fidl::encoding::HandleType<
13326 fidl::NullableHandle,
13327 { fidl::ObjectType::NONE.into_raw() },
13328 2147483648,
13329 >,
13330 2,
13331 >,
13332 3,
13333 >,
13334 >,
13335 fidl::encoding::DefaultFuchsiaResourceDialect
13336 ),
13337 }
13338 }
13339
13340 #[inline]
13341 unsafe fn decode(
13342 &mut self,
13343 decoder: &mut fidl::encoding::Decoder<
13344 '_,
13345 fidl::encoding::DefaultFuchsiaResourceDialect,
13346 >,
13347 offset: usize,
13348 _depth: fidl::encoding::Depth,
13349 ) -> fidl::Result<()> {
13350 decoder.debug_check_bounds::<Self>(offset);
13351 fidl::decode!(
13353 fidl::encoding::UnboundedVector<bool>,
13354 fidl::encoding::DefaultFuchsiaResourceDialect,
13355 &mut self.b_0,
13356 decoder,
13357 offset + 0,
13358 _depth
13359 )?;
13360 fidl::decode!(
13361 fidl::encoding::UnboundedVector<i8>,
13362 fidl::encoding::DefaultFuchsiaResourceDialect,
13363 &mut self.i8_0,
13364 decoder,
13365 offset + 16,
13366 _depth
13367 )?;
13368 fidl::decode!(
13369 fidl::encoding::UnboundedVector<i16>,
13370 fidl::encoding::DefaultFuchsiaResourceDialect,
13371 &mut self.i16_0,
13372 decoder,
13373 offset + 32,
13374 _depth
13375 )?;
13376 fidl::decode!(
13377 fidl::encoding::UnboundedVector<i32>,
13378 fidl::encoding::DefaultFuchsiaResourceDialect,
13379 &mut self.i32_0,
13380 decoder,
13381 offset + 48,
13382 _depth
13383 )?;
13384 fidl::decode!(
13385 fidl::encoding::UnboundedVector<i64>,
13386 fidl::encoding::DefaultFuchsiaResourceDialect,
13387 &mut self.i64_0,
13388 decoder,
13389 offset + 64,
13390 _depth
13391 )?;
13392 fidl::decode!(
13393 fidl::encoding::UnboundedVector<u8>,
13394 fidl::encoding::DefaultFuchsiaResourceDialect,
13395 &mut self.u8_0,
13396 decoder,
13397 offset + 80,
13398 _depth
13399 )?;
13400 fidl::decode!(
13401 fidl::encoding::UnboundedVector<u16>,
13402 fidl::encoding::DefaultFuchsiaResourceDialect,
13403 &mut self.u16_0,
13404 decoder,
13405 offset + 96,
13406 _depth
13407 )?;
13408 fidl::decode!(
13409 fidl::encoding::UnboundedVector<u32>,
13410 fidl::encoding::DefaultFuchsiaResourceDialect,
13411 &mut self.u32_0,
13412 decoder,
13413 offset + 112,
13414 _depth
13415 )?;
13416 fidl::decode!(
13417 fidl::encoding::UnboundedVector<u64>,
13418 fidl::encoding::DefaultFuchsiaResourceDialect,
13419 &mut self.u64_0,
13420 decoder,
13421 offset + 128,
13422 _depth
13423 )?;
13424 fidl::decode!(
13425 fidl::encoding::UnboundedVector<f32>,
13426 fidl::encoding::DefaultFuchsiaResourceDialect,
13427 &mut self.f32_0,
13428 decoder,
13429 offset + 144,
13430 _depth
13431 )?;
13432 fidl::decode!(
13433 fidl::encoding::UnboundedVector<f64>,
13434 fidl::encoding::DefaultFuchsiaResourceDialect,
13435 &mut self.f64_0,
13436 decoder,
13437 offset + 160,
13438 _depth
13439 )?;
13440 fidl::decode!(
13441 fidl::encoding::UnboundedVector<
13442 fidl::encoding::HandleType<
13443 fidl::NullableHandle,
13444 { fidl::ObjectType::NONE.into_raw() },
13445 2147483648,
13446 >,
13447 >,
13448 fidl::encoding::DefaultFuchsiaResourceDialect,
13449 &mut self.handle_0,
13450 decoder,
13451 offset + 176,
13452 _depth
13453 )?;
13454 fidl::decode!(
13455 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13456 fidl::encoding::DefaultFuchsiaResourceDialect,
13457 &mut self.b_1,
13458 decoder,
13459 offset + 192,
13460 _depth
13461 )?;
13462 fidl::decode!(
13463 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13464 fidl::encoding::DefaultFuchsiaResourceDialect,
13465 &mut self.i8_1,
13466 decoder,
13467 offset + 208,
13468 _depth
13469 )?;
13470 fidl::decode!(
13471 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13472 fidl::encoding::DefaultFuchsiaResourceDialect,
13473 &mut self.i16_1,
13474 decoder,
13475 offset + 224,
13476 _depth
13477 )?;
13478 fidl::decode!(
13479 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13480 fidl::encoding::DefaultFuchsiaResourceDialect,
13481 &mut self.i32_1,
13482 decoder,
13483 offset + 240,
13484 _depth
13485 )?;
13486 fidl::decode!(
13487 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13488 fidl::encoding::DefaultFuchsiaResourceDialect,
13489 &mut self.i64_1,
13490 decoder,
13491 offset + 256,
13492 _depth
13493 )?;
13494 fidl::decode!(
13495 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13496 fidl::encoding::DefaultFuchsiaResourceDialect,
13497 &mut self.u8_1,
13498 decoder,
13499 offset + 272,
13500 _depth
13501 )?;
13502 fidl::decode!(
13503 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13504 fidl::encoding::DefaultFuchsiaResourceDialect,
13505 &mut self.u16_1,
13506 decoder,
13507 offset + 288,
13508 _depth
13509 )?;
13510 fidl::decode!(
13511 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13512 fidl::encoding::DefaultFuchsiaResourceDialect,
13513 &mut self.u32_1,
13514 decoder,
13515 offset + 304,
13516 _depth
13517 )?;
13518 fidl::decode!(
13519 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13520 fidl::encoding::DefaultFuchsiaResourceDialect,
13521 &mut self.u64_1,
13522 decoder,
13523 offset + 320,
13524 _depth
13525 )?;
13526 fidl::decode!(
13527 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13528 fidl::encoding::DefaultFuchsiaResourceDialect,
13529 &mut self.f32_1,
13530 decoder,
13531 offset + 336,
13532 _depth
13533 )?;
13534 fidl::decode!(
13535 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13536 fidl::encoding::DefaultFuchsiaResourceDialect,
13537 &mut self.f64_1,
13538 decoder,
13539 offset + 352,
13540 _depth
13541 )?;
13542 fidl::decode!(
13543 fidl::encoding::UnboundedVector<
13544 fidl::encoding::Vector<
13545 fidl::encoding::HandleType<
13546 fidl::NullableHandle,
13547 { fidl::ObjectType::NONE.into_raw() },
13548 2147483648,
13549 >,
13550 2,
13551 >,
13552 >,
13553 fidl::encoding::DefaultFuchsiaResourceDialect,
13554 &mut self.handle_1,
13555 decoder,
13556 offset + 368,
13557 _depth
13558 )?;
13559 fidl::decode!(fidl::encoding::Vector<bool, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_sized_0, decoder, offset + 384, _depth)?;
13560 fidl::decode!(fidl::encoding::Vector<i8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_sized_0, decoder, offset + 400, _depth)?;
13561 fidl::decode!(fidl::encoding::Vector<i16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_sized_0, decoder, offset + 416, _depth)?;
13562 fidl::decode!(fidl::encoding::Vector<i32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_sized_0, decoder, offset + 432, _depth)?;
13563 fidl::decode!(fidl::encoding::Vector<i64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_sized_0, decoder, offset + 448, _depth)?;
13564 fidl::decode!(fidl::encoding::Vector<u8, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_sized_0, decoder, offset + 464, _depth)?;
13565 fidl::decode!(fidl::encoding::Vector<u16, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_sized_0, decoder, offset + 480, _depth)?;
13566 fidl::decode!(fidl::encoding::Vector<u32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_sized_0, decoder, offset + 496, _depth)?;
13567 fidl::decode!(fidl::encoding::Vector<u64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_sized_0, decoder, offset + 512, _depth)?;
13568 fidl::decode!(fidl::encoding::Vector<f32, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_sized_0, decoder, offset + 528, _depth)?;
13569 fidl::decode!(fidl::encoding::Vector<f64, 1>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_sized_0, decoder, offset + 544, _depth)?;
13570 fidl::decode!(
13571 fidl::encoding::Vector<
13572 fidl::encoding::HandleType<
13573 fidl::NullableHandle,
13574 { fidl::ObjectType::NONE.into_raw() },
13575 2147483648,
13576 >,
13577 1,
13578 >,
13579 fidl::encoding::DefaultFuchsiaResourceDialect,
13580 &mut self.handle_sized_0,
13581 decoder,
13582 offset + 560,
13583 _depth
13584 )?;
13585 fidl::decode!(fidl::encoding::Vector<bool, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.b_sized_1, decoder, offset + 576, _depth)?;
13586 fidl::decode!(fidl::encoding::Vector<i8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i8_sized_1, decoder, offset + 592, _depth)?;
13587 fidl::decode!(fidl::encoding::Vector<i16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i16_sized_1, decoder, offset + 608, _depth)?;
13588 fidl::decode!(fidl::encoding::Vector<i32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i32_sized_1, decoder, offset + 624, _depth)?;
13589 fidl::decode!(fidl::encoding::Vector<i64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.i64_sized_1, decoder, offset + 640, _depth)?;
13590 fidl::decode!(fidl::encoding::Vector<u8, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u8_sized_1, decoder, offset + 656, _depth)?;
13591 fidl::decode!(fidl::encoding::Vector<u16, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u16_sized_1, decoder, offset + 672, _depth)?;
13592 fidl::decode!(fidl::encoding::Vector<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u32_sized_1, decoder, offset + 688, _depth)?;
13593 fidl::decode!(fidl::encoding::Vector<u64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.u64_sized_1, decoder, offset + 704, _depth)?;
13594 fidl::decode!(fidl::encoding::Vector<f32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f32_sized_1, decoder, offset + 720, _depth)?;
13595 fidl::decode!(fidl::encoding::Vector<f64, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, &mut self.f64_sized_1, decoder, offset + 736, _depth)?;
13596 fidl::decode!(
13597 fidl::encoding::Vector<
13598 fidl::encoding::HandleType<
13599 fidl::NullableHandle,
13600 { fidl::ObjectType::NONE.into_raw() },
13601 2147483648,
13602 >,
13603 3,
13604 >,
13605 fidl::encoding::DefaultFuchsiaResourceDialect,
13606 &mut self.handle_sized_1,
13607 decoder,
13608 offset + 752,
13609 _depth
13610 )?;
13611 fidl::decode!(
13612 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
13613 fidl::encoding::DefaultFuchsiaResourceDialect,
13614 &mut self.b_sized_2,
13615 decoder,
13616 offset + 768,
13617 _depth
13618 )?;
13619 fidl::decode!(
13620 fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>,
13621 fidl::encoding::DefaultFuchsiaResourceDialect,
13622 &mut self.i8_sized_2,
13623 decoder,
13624 offset + 784,
13625 _depth
13626 )?;
13627 fidl::decode!(
13628 fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>,
13629 fidl::encoding::DefaultFuchsiaResourceDialect,
13630 &mut self.i16_sized_2,
13631 decoder,
13632 offset + 800,
13633 _depth
13634 )?;
13635 fidl::decode!(
13636 fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>,
13637 fidl::encoding::DefaultFuchsiaResourceDialect,
13638 &mut self.i32_sized_2,
13639 decoder,
13640 offset + 816,
13641 _depth
13642 )?;
13643 fidl::decode!(
13644 fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>,
13645 fidl::encoding::DefaultFuchsiaResourceDialect,
13646 &mut self.i64_sized_2,
13647 decoder,
13648 offset + 832,
13649 _depth
13650 )?;
13651 fidl::decode!(
13652 fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>,
13653 fidl::encoding::DefaultFuchsiaResourceDialect,
13654 &mut self.u8_sized_2,
13655 decoder,
13656 offset + 848,
13657 _depth
13658 )?;
13659 fidl::decode!(
13660 fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>,
13661 fidl::encoding::DefaultFuchsiaResourceDialect,
13662 &mut self.u16_sized_2,
13663 decoder,
13664 offset + 864,
13665 _depth
13666 )?;
13667 fidl::decode!(
13668 fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>,
13669 fidl::encoding::DefaultFuchsiaResourceDialect,
13670 &mut self.u32_sized_2,
13671 decoder,
13672 offset + 880,
13673 _depth
13674 )?;
13675 fidl::decode!(
13676 fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>,
13677 fidl::encoding::DefaultFuchsiaResourceDialect,
13678 &mut self.u64_sized_2,
13679 decoder,
13680 offset + 896,
13681 _depth
13682 )?;
13683 fidl::decode!(
13684 fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>,
13685 fidl::encoding::DefaultFuchsiaResourceDialect,
13686 &mut self.f32_sized_2,
13687 decoder,
13688 offset + 912,
13689 _depth
13690 )?;
13691 fidl::decode!(
13692 fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>,
13693 fidl::encoding::DefaultFuchsiaResourceDialect,
13694 &mut self.f64_sized_2,
13695 decoder,
13696 offset + 928,
13697 _depth
13698 )?;
13699 fidl::decode!(
13700 fidl::encoding::Vector<
13701 fidl::encoding::Vector<
13702 fidl::encoding::HandleType<
13703 fidl::NullableHandle,
13704 { fidl::ObjectType::NONE.into_raw() },
13705 2147483648,
13706 >,
13707 2,
13708 >,
13709 3,
13710 >,
13711 fidl::encoding::DefaultFuchsiaResourceDialect,
13712 &mut self.handle_sized_2,
13713 decoder,
13714 offset + 944,
13715 _depth
13716 )?;
13717 fidl::decode!(
13718 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13719 fidl::encoding::DefaultFuchsiaResourceDialect,
13720 &mut self.b_nullable_0,
13721 decoder,
13722 offset + 960,
13723 _depth
13724 )?;
13725 fidl::decode!(
13726 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13727 fidl::encoding::DefaultFuchsiaResourceDialect,
13728 &mut self.i8_nullable_0,
13729 decoder,
13730 offset + 976,
13731 _depth
13732 )?;
13733 fidl::decode!(
13734 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13735 fidl::encoding::DefaultFuchsiaResourceDialect,
13736 &mut self.i16_nullable_0,
13737 decoder,
13738 offset + 992,
13739 _depth
13740 )?;
13741 fidl::decode!(
13742 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13743 fidl::encoding::DefaultFuchsiaResourceDialect,
13744 &mut self.i32_nullable_0,
13745 decoder,
13746 offset + 1008,
13747 _depth
13748 )?;
13749 fidl::decode!(
13750 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13751 fidl::encoding::DefaultFuchsiaResourceDialect,
13752 &mut self.i64_nullable_0,
13753 decoder,
13754 offset + 1024,
13755 _depth
13756 )?;
13757 fidl::decode!(
13758 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13759 fidl::encoding::DefaultFuchsiaResourceDialect,
13760 &mut self.u8_nullable_0,
13761 decoder,
13762 offset + 1040,
13763 _depth
13764 )?;
13765 fidl::decode!(
13766 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
13767 fidl::encoding::DefaultFuchsiaResourceDialect,
13768 &mut self.u16_nullable_0,
13769 decoder,
13770 offset + 1056,
13771 _depth
13772 )?;
13773 fidl::decode!(
13774 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
13775 fidl::encoding::DefaultFuchsiaResourceDialect,
13776 &mut self.u32_nullable_0,
13777 decoder,
13778 offset + 1072,
13779 _depth
13780 )?;
13781 fidl::decode!(
13782 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
13783 fidl::encoding::DefaultFuchsiaResourceDialect,
13784 &mut self.u64_nullable_0,
13785 decoder,
13786 offset + 1088,
13787 _depth
13788 )?;
13789 fidl::decode!(
13790 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
13791 fidl::encoding::DefaultFuchsiaResourceDialect,
13792 &mut self.f32_nullable_0,
13793 decoder,
13794 offset + 1104,
13795 _depth
13796 )?;
13797 fidl::decode!(
13798 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
13799 fidl::encoding::DefaultFuchsiaResourceDialect,
13800 &mut self.f64_nullable_0,
13801 decoder,
13802 offset + 1120,
13803 _depth
13804 )?;
13805 fidl::decode!(
13806 fidl::encoding::Optional<
13807 fidl::encoding::Vector<
13808 fidl::encoding::HandleType<
13809 fidl::NullableHandle,
13810 { fidl::ObjectType::NONE.into_raw() },
13811 2147483648,
13812 >,
13813 1,
13814 >,
13815 >,
13816 fidl::encoding::DefaultFuchsiaResourceDialect,
13817 &mut self.handle_nullable_0,
13818 decoder,
13819 offset + 1136,
13820 _depth
13821 )?;
13822 fidl::decode!(
13823 fidl::encoding::Optional<
13824 fidl::encoding::UnboundedVector<fidl::encoding::Vector<bool, 2>>,
13825 >,
13826 fidl::encoding::DefaultFuchsiaResourceDialect,
13827 &mut self.b_nullable_1,
13828 decoder,
13829 offset + 1152,
13830 _depth
13831 )?;
13832 fidl::decode!(
13833 fidl::encoding::Optional<
13834 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i8, 2>>,
13835 >,
13836 fidl::encoding::DefaultFuchsiaResourceDialect,
13837 &mut self.i8_nullable_1,
13838 decoder,
13839 offset + 1168,
13840 _depth
13841 )?;
13842 fidl::decode!(
13843 fidl::encoding::Optional<
13844 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i16, 2>>,
13845 >,
13846 fidl::encoding::DefaultFuchsiaResourceDialect,
13847 &mut self.i16_nullable_1,
13848 decoder,
13849 offset + 1184,
13850 _depth
13851 )?;
13852 fidl::decode!(
13853 fidl::encoding::Optional<
13854 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i32, 2>>,
13855 >,
13856 fidl::encoding::DefaultFuchsiaResourceDialect,
13857 &mut self.i32_nullable_1,
13858 decoder,
13859 offset + 1200,
13860 _depth
13861 )?;
13862 fidl::decode!(
13863 fidl::encoding::Optional<
13864 fidl::encoding::UnboundedVector<fidl::encoding::Vector<i64, 2>>,
13865 >,
13866 fidl::encoding::DefaultFuchsiaResourceDialect,
13867 &mut self.i64_nullable_1,
13868 decoder,
13869 offset + 1216,
13870 _depth
13871 )?;
13872 fidl::decode!(
13873 fidl::encoding::Optional<
13874 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u8, 2>>,
13875 >,
13876 fidl::encoding::DefaultFuchsiaResourceDialect,
13877 &mut self.u8_nullable_1,
13878 decoder,
13879 offset + 1232,
13880 _depth
13881 )?;
13882 fidl::decode!(
13883 fidl::encoding::Optional<
13884 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u16, 2>>,
13885 >,
13886 fidl::encoding::DefaultFuchsiaResourceDialect,
13887 &mut self.u16_nullable_1,
13888 decoder,
13889 offset + 1248,
13890 _depth
13891 )?;
13892 fidl::decode!(
13893 fidl::encoding::Optional<
13894 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u32, 2>>,
13895 >,
13896 fidl::encoding::DefaultFuchsiaResourceDialect,
13897 &mut self.u32_nullable_1,
13898 decoder,
13899 offset + 1264,
13900 _depth
13901 )?;
13902 fidl::decode!(
13903 fidl::encoding::Optional<
13904 fidl::encoding::UnboundedVector<fidl::encoding::Vector<u64, 2>>,
13905 >,
13906 fidl::encoding::DefaultFuchsiaResourceDialect,
13907 &mut self.u64_nullable_1,
13908 decoder,
13909 offset + 1280,
13910 _depth
13911 )?;
13912 fidl::decode!(
13913 fidl::encoding::Optional<
13914 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f32, 2>>,
13915 >,
13916 fidl::encoding::DefaultFuchsiaResourceDialect,
13917 &mut self.f32_nullable_1,
13918 decoder,
13919 offset + 1296,
13920 _depth
13921 )?;
13922 fidl::decode!(
13923 fidl::encoding::Optional<
13924 fidl::encoding::UnboundedVector<fidl::encoding::Vector<f64, 2>>,
13925 >,
13926 fidl::encoding::DefaultFuchsiaResourceDialect,
13927 &mut self.f64_nullable_1,
13928 decoder,
13929 offset + 1312,
13930 _depth
13931 )?;
13932 fidl::decode!(
13933 fidl::encoding::Optional<
13934 fidl::encoding::UnboundedVector<
13935 fidl::encoding::Vector<
13936 fidl::encoding::HandleType<
13937 fidl::NullableHandle,
13938 { fidl::ObjectType::NONE.into_raw() },
13939 2147483648,
13940 >,
13941 2,
13942 >,
13943 >,
13944 >,
13945 fidl::encoding::DefaultFuchsiaResourceDialect,
13946 &mut self.handle_nullable_1,
13947 decoder,
13948 offset + 1328,
13949 _depth
13950 )?;
13951 fidl::decode!(
13952 fidl::encoding::Optional<fidl::encoding::Vector<bool, 1>>,
13953 fidl::encoding::DefaultFuchsiaResourceDialect,
13954 &mut self.b_nullable_sized_0,
13955 decoder,
13956 offset + 1344,
13957 _depth
13958 )?;
13959 fidl::decode!(
13960 fidl::encoding::Optional<fidl::encoding::Vector<i8, 1>>,
13961 fidl::encoding::DefaultFuchsiaResourceDialect,
13962 &mut self.i8_nullable_sized_0,
13963 decoder,
13964 offset + 1360,
13965 _depth
13966 )?;
13967 fidl::decode!(
13968 fidl::encoding::Optional<fidl::encoding::Vector<i16, 1>>,
13969 fidl::encoding::DefaultFuchsiaResourceDialect,
13970 &mut self.i16_nullable_sized_0,
13971 decoder,
13972 offset + 1376,
13973 _depth
13974 )?;
13975 fidl::decode!(
13976 fidl::encoding::Optional<fidl::encoding::Vector<i32, 1>>,
13977 fidl::encoding::DefaultFuchsiaResourceDialect,
13978 &mut self.i32_nullable_sized_0,
13979 decoder,
13980 offset + 1392,
13981 _depth
13982 )?;
13983 fidl::decode!(
13984 fidl::encoding::Optional<fidl::encoding::Vector<i64, 1>>,
13985 fidl::encoding::DefaultFuchsiaResourceDialect,
13986 &mut self.i64_nullable_sized_0,
13987 decoder,
13988 offset + 1408,
13989 _depth
13990 )?;
13991 fidl::decode!(
13992 fidl::encoding::Optional<fidl::encoding::Vector<u8, 1>>,
13993 fidl::encoding::DefaultFuchsiaResourceDialect,
13994 &mut self.u8_nullable_sized_0,
13995 decoder,
13996 offset + 1424,
13997 _depth
13998 )?;
13999 fidl::decode!(
14000 fidl::encoding::Optional<fidl::encoding::Vector<u16, 1>>,
14001 fidl::encoding::DefaultFuchsiaResourceDialect,
14002 &mut self.u16_nullable_sized_0,
14003 decoder,
14004 offset + 1440,
14005 _depth
14006 )?;
14007 fidl::decode!(
14008 fidl::encoding::Optional<fidl::encoding::Vector<u32, 1>>,
14009 fidl::encoding::DefaultFuchsiaResourceDialect,
14010 &mut self.u32_nullable_sized_0,
14011 decoder,
14012 offset + 1456,
14013 _depth
14014 )?;
14015 fidl::decode!(
14016 fidl::encoding::Optional<fidl::encoding::Vector<u64, 1>>,
14017 fidl::encoding::DefaultFuchsiaResourceDialect,
14018 &mut self.u64_nullable_sized_0,
14019 decoder,
14020 offset + 1472,
14021 _depth
14022 )?;
14023 fidl::decode!(
14024 fidl::encoding::Optional<fidl::encoding::Vector<f32, 1>>,
14025 fidl::encoding::DefaultFuchsiaResourceDialect,
14026 &mut self.f32_nullable_sized_0,
14027 decoder,
14028 offset + 1488,
14029 _depth
14030 )?;
14031 fidl::decode!(
14032 fidl::encoding::Optional<fidl::encoding::Vector<f64, 1>>,
14033 fidl::encoding::DefaultFuchsiaResourceDialect,
14034 &mut self.f64_nullable_sized_0,
14035 decoder,
14036 offset + 1504,
14037 _depth
14038 )?;
14039 fidl::decode!(
14040 fidl::encoding::Optional<
14041 fidl::encoding::Vector<
14042 fidl::encoding::HandleType<
14043 fidl::NullableHandle,
14044 { fidl::ObjectType::NONE.into_raw() },
14045 2147483648,
14046 >,
14047 1,
14048 >,
14049 >,
14050 fidl::encoding::DefaultFuchsiaResourceDialect,
14051 &mut self.handle_nullable_sized_0,
14052 decoder,
14053 offset + 1520,
14054 _depth
14055 )?;
14056 fidl::decode!(
14057 fidl::encoding::Optional<fidl::encoding::Vector<bool, 3>>,
14058 fidl::encoding::DefaultFuchsiaResourceDialect,
14059 &mut self.b_nullable_sized_1,
14060 decoder,
14061 offset + 1536,
14062 _depth
14063 )?;
14064 fidl::decode!(
14065 fidl::encoding::Optional<fidl::encoding::Vector<i8, 3>>,
14066 fidl::encoding::DefaultFuchsiaResourceDialect,
14067 &mut self.i8_nullable_sized_1,
14068 decoder,
14069 offset + 1552,
14070 _depth
14071 )?;
14072 fidl::decode!(
14073 fidl::encoding::Optional<fidl::encoding::Vector<i16, 3>>,
14074 fidl::encoding::DefaultFuchsiaResourceDialect,
14075 &mut self.i16_nullable_sized_1,
14076 decoder,
14077 offset + 1568,
14078 _depth
14079 )?;
14080 fidl::decode!(
14081 fidl::encoding::Optional<fidl::encoding::Vector<i32, 3>>,
14082 fidl::encoding::DefaultFuchsiaResourceDialect,
14083 &mut self.i32_nullable_sized_1,
14084 decoder,
14085 offset + 1584,
14086 _depth
14087 )?;
14088 fidl::decode!(
14089 fidl::encoding::Optional<fidl::encoding::Vector<i64, 3>>,
14090 fidl::encoding::DefaultFuchsiaResourceDialect,
14091 &mut self.i64_nullable_sized_1,
14092 decoder,
14093 offset + 1600,
14094 _depth
14095 )?;
14096 fidl::decode!(
14097 fidl::encoding::Optional<fidl::encoding::Vector<u8, 3>>,
14098 fidl::encoding::DefaultFuchsiaResourceDialect,
14099 &mut self.u8_nullable_sized_1,
14100 decoder,
14101 offset + 1616,
14102 _depth
14103 )?;
14104 fidl::decode!(
14105 fidl::encoding::Optional<fidl::encoding::Vector<u16, 3>>,
14106 fidl::encoding::DefaultFuchsiaResourceDialect,
14107 &mut self.u16_nullable_sized_1,
14108 decoder,
14109 offset + 1632,
14110 _depth
14111 )?;
14112 fidl::decode!(
14113 fidl::encoding::Optional<fidl::encoding::Vector<u32, 3>>,
14114 fidl::encoding::DefaultFuchsiaResourceDialect,
14115 &mut self.u32_nullable_sized_1,
14116 decoder,
14117 offset + 1648,
14118 _depth
14119 )?;
14120 fidl::decode!(
14121 fidl::encoding::Optional<fidl::encoding::Vector<u64, 3>>,
14122 fidl::encoding::DefaultFuchsiaResourceDialect,
14123 &mut self.u64_nullable_sized_1,
14124 decoder,
14125 offset + 1664,
14126 _depth
14127 )?;
14128 fidl::decode!(
14129 fidl::encoding::Optional<fidl::encoding::Vector<f32, 3>>,
14130 fidl::encoding::DefaultFuchsiaResourceDialect,
14131 &mut self.f32_nullable_sized_1,
14132 decoder,
14133 offset + 1680,
14134 _depth
14135 )?;
14136 fidl::decode!(
14137 fidl::encoding::Optional<fidl::encoding::Vector<f64, 3>>,
14138 fidl::encoding::DefaultFuchsiaResourceDialect,
14139 &mut self.f64_nullable_sized_1,
14140 decoder,
14141 offset + 1696,
14142 _depth
14143 )?;
14144 fidl::decode!(
14145 fidl::encoding::Optional<
14146 fidl::encoding::Vector<
14147 fidl::encoding::HandleType<
14148 fidl::NullableHandle,
14149 { fidl::ObjectType::NONE.into_raw() },
14150 2147483648,
14151 >,
14152 3,
14153 >,
14154 >,
14155 fidl::encoding::DefaultFuchsiaResourceDialect,
14156 &mut self.handle_nullable_sized_1,
14157 decoder,
14158 offset + 1712,
14159 _depth
14160 )?;
14161 fidl::decode!(
14162 fidl::encoding::Optional<
14163 fidl::encoding::Vector<fidl::encoding::Vector<bool, 2>, 3>,
14164 >,
14165 fidl::encoding::DefaultFuchsiaResourceDialect,
14166 &mut self.b_nullable_sized_2,
14167 decoder,
14168 offset + 1728,
14169 _depth
14170 )?;
14171 fidl::decode!(
14172 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i8, 2>, 3>>,
14173 fidl::encoding::DefaultFuchsiaResourceDialect,
14174 &mut self.i8_nullable_sized_2,
14175 decoder,
14176 offset + 1744,
14177 _depth
14178 )?;
14179 fidl::decode!(
14180 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i16, 2>, 3>>,
14181 fidl::encoding::DefaultFuchsiaResourceDialect,
14182 &mut self.i16_nullable_sized_2,
14183 decoder,
14184 offset + 1760,
14185 _depth
14186 )?;
14187 fidl::decode!(
14188 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i32, 2>, 3>>,
14189 fidl::encoding::DefaultFuchsiaResourceDialect,
14190 &mut self.i32_nullable_sized_2,
14191 decoder,
14192 offset + 1776,
14193 _depth
14194 )?;
14195 fidl::decode!(
14196 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<i64, 2>, 3>>,
14197 fidl::encoding::DefaultFuchsiaResourceDialect,
14198 &mut self.i64_nullable_sized_2,
14199 decoder,
14200 offset + 1792,
14201 _depth
14202 )?;
14203 fidl::decode!(
14204 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u8, 2>, 3>>,
14205 fidl::encoding::DefaultFuchsiaResourceDialect,
14206 &mut self.u8_nullable_sized_2,
14207 decoder,
14208 offset + 1808,
14209 _depth
14210 )?;
14211 fidl::decode!(
14212 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u16, 2>, 3>>,
14213 fidl::encoding::DefaultFuchsiaResourceDialect,
14214 &mut self.u16_nullable_sized_2,
14215 decoder,
14216 offset + 1824,
14217 _depth
14218 )?;
14219 fidl::decode!(
14220 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u32, 2>, 3>>,
14221 fidl::encoding::DefaultFuchsiaResourceDialect,
14222 &mut self.u32_nullable_sized_2,
14223 decoder,
14224 offset + 1840,
14225 _depth
14226 )?;
14227 fidl::decode!(
14228 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<u64, 2>, 3>>,
14229 fidl::encoding::DefaultFuchsiaResourceDialect,
14230 &mut self.u64_nullable_sized_2,
14231 decoder,
14232 offset + 1856,
14233 _depth
14234 )?;
14235 fidl::decode!(
14236 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f32, 2>, 3>>,
14237 fidl::encoding::DefaultFuchsiaResourceDialect,
14238 &mut self.f32_nullable_sized_2,
14239 decoder,
14240 offset + 1872,
14241 _depth
14242 )?;
14243 fidl::decode!(
14244 fidl::encoding::Optional<fidl::encoding::Vector<fidl::encoding::Vector<f64, 2>, 3>>,
14245 fidl::encoding::DefaultFuchsiaResourceDialect,
14246 &mut self.f64_nullable_sized_2,
14247 decoder,
14248 offset + 1888,
14249 _depth
14250 )?;
14251 fidl::decode!(
14252 fidl::encoding::Optional<
14253 fidl::encoding::Vector<
14254 fidl::encoding::Vector<
14255 fidl::encoding::HandleType<
14256 fidl::NullableHandle,
14257 { fidl::ObjectType::NONE.into_raw() },
14258 2147483648,
14259 >,
14260 2,
14261 >,
14262 3,
14263 >,
14264 >,
14265 fidl::encoding::DefaultFuchsiaResourceDialect,
14266 &mut self.handle_nullable_sized_2,
14267 decoder,
14268 offset + 1904,
14269 _depth
14270 )?;
14271 Ok(())
14272 }
14273 }
14274
14275 impl AllTypesTable {
14276 #[inline(always)]
14277 fn max_ordinal_present(&self) -> u64 {
14278 if let Some(_) = self.xunion_member {
14279 return 21;
14280 }
14281 if let Some(_) = self.table_member {
14282 return 20;
14283 }
14284 if let Some(_) = self.vector_member {
14285 return 19;
14286 }
14287 if let Some(_) = self.array_member {
14288 return 18;
14289 }
14290 if let Some(_) = self.union_member {
14291 return 17;
14292 }
14293 if let Some(_) = self.struct_member {
14294 return 16;
14295 }
14296 if let Some(_) = self.string_member {
14297 return 15;
14298 }
14299 if let Some(_) = self.handle_member {
14300 return 14;
14301 }
14302 if let Some(_) = self.bits_member {
14303 return 13;
14304 }
14305 if let Some(_) = self.enum_member {
14306 return 12;
14307 }
14308 if let Some(_) = self.float64_member {
14309 return 11;
14310 }
14311 if let Some(_) = self.float32_member {
14312 return 10;
14313 }
14314 if let Some(_) = self.uint64_member {
14315 return 9;
14316 }
14317 if let Some(_) = self.uint32_member {
14318 return 8;
14319 }
14320 if let Some(_) = self.uint16_member {
14321 return 7;
14322 }
14323 if let Some(_) = self.uint8_member {
14324 return 6;
14325 }
14326 if let Some(_) = self.int64_member {
14327 return 5;
14328 }
14329 if let Some(_) = self.int32_member {
14330 return 4;
14331 }
14332 if let Some(_) = self.int16_member {
14333 return 3;
14334 }
14335 if let Some(_) = self.int8_member {
14336 return 2;
14337 }
14338 if let Some(_) = self.bool_member {
14339 return 1;
14340 }
14341 0
14342 }
14343 }
14344
14345 impl fidl::encoding::ResourceTypeMarker for AllTypesTable {
14346 type Borrowed<'a> = &'a mut Self;
14347 fn take_or_borrow<'a>(
14348 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
14349 ) -> Self::Borrowed<'a> {
14350 value
14351 }
14352 }
14353
14354 unsafe impl fidl::encoding::TypeMarker for AllTypesTable {
14355 type Owned = Self;
14356
14357 #[inline(always)]
14358 fn inline_align(_context: fidl::encoding::Context) -> usize {
14359 8
14360 }
14361
14362 #[inline(always)]
14363 fn inline_size(_context: fidl::encoding::Context) -> usize {
14364 16
14365 }
14366 }
14367
14368 unsafe impl fidl::encoding::Encode<AllTypesTable, fidl::encoding::DefaultFuchsiaResourceDialect>
14369 for &mut AllTypesTable
14370 {
14371 unsafe fn encode(
14372 self,
14373 encoder: &mut fidl::encoding::Encoder<
14374 '_,
14375 fidl::encoding::DefaultFuchsiaResourceDialect,
14376 >,
14377 offset: usize,
14378 mut depth: fidl::encoding::Depth,
14379 ) -> fidl::Result<()> {
14380 encoder.debug_check_bounds::<AllTypesTable>(offset);
14381 let max_ordinal: u64 = self.max_ordinal_present();
14383 encoder.write_num(max_ordinal, offset);
14384 encoder.write_num(fidl::encoding::ALLOC_PRESENT_U64, offset + 8);
14385 if max_ordinal == 0 {
14387 return Ok(());
14388 }
14389 depth.increment()?;
14390 let envelope_size = 8;
14391 let bytes_len = max_ordinal as usize * envelope_size;
14392 #[allow(unused_variables)]
14393 let offset = encoder.out_of_line_offset(bytes_len);
14394 let mut _prev_end_offset: usize = 0;
14395 if 1 > max_ordinal {
14396 return Ok(());
14397 }
14398
14399 let cur_offset: usize = (1 - 1) * envelope_size;
14402
14403 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14405
14406 fidl::encoding::encode_in_envelope_optional::<
14411 bool,
14412 fidl::encoding::DefaultFuchsiaResourceDialect,
14413 >(
14414 self.bool_member.as_ref().map(<bool as fidl::encoding::ValueTypeMarker>::borrow),
14415 encoder,
14416 offset + cur_offset,
14417 depth,
14418 )?;
14419
14420 _prev_end_offset = cur_offset + envelope_size;
14421 if 2 > max_ordinal {
14422 return Ok(());
14423 }
14424
14425 let cur_offset: usize = (2 - 1) * envelope_size;
14428
14429 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14431
14432 fidl::encoding::encode_in_envelope_optional::<
14437 i8,
14438 fidl::encoding::DefaultFuchsiaResourceDialect,
14439 >(
14440 self.int8_member.as_ref().map(<i8 as fidl::encoding::ValueTypeMarker>::borrow),
14441 encoder,
14442 offset + cur_offset,
14443 depth,
14444 )?;
14445
14446 _prev_end_offset = cur_offset + envelope_size;
14447 if 3 > max_ordinal {
14448 return Ok(());
14449 }
14450
14451 let cur_offset: usize = (3 - 1) * envelope_size;
14454
14455 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14457
14458 fidl::encoding::encode_in_envelope_optional::<
14463 i16,
14464 fidl::encoding::DefaultFuchsiaResourceDialect,
14465 >(
14466 self.int16_member.as_ref().map(<i16 as fidl::encoding::ValueTypeMarker>::borrow),
14467 encoder,
14468 offset + cur_offset,
14469 depth,
14470 )?;
14471
14472 _prev_end_offset = cur_offset + envelope_size;
14473 if 4 > max_ordinal {
14474 return Ok(());
14475 }
14476
14477 let cur_offset: usize = (4 - 1) * envelope_size;
14480
14481 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14483
14484 fidl::encoding::encode_in_envelope_optional::<
14489 i32,
14490 fidl::encoding::DefaultFuchsiaResourceDialect,
14491 >(
14492 self.int32_member.as_ref().map(<i32 as fidl::encoding::ValueTypeMarker>::borrow),
14493 encoder,
14494 offset + cur_offset,
14495 depth,
14496 )?;
14497
14498 _prev_end_offset = cur_offset + envelope_size;
14499 if 5 > max_ordinal {
14500 return Ok(());
14501 }
14502
14503 let cur_offset: usize = (5 - 1) * envelope_size;
14506
14507 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14509
14510 fidl::encoding::encode_in_envelope_optional::<
14515 i64,
14516 fidl::encoding::DefaultFuchsiaResourceDialect,
14517 >(
14518 self.int64_member.as_ref().map(<i64 as fidl::encoding::ValueTypeMarker>::borrow),
14519 encoder,
14520 offset + cur_offset,
14521 depth,
14522 )?;
14523
14524 _prev_end_offset = cur_offset + envelope_size;
14525 if 6 > max_ordinal {
14526 return Ok(());
14527 }
14528
14529 let cur_offset: usize = (6 - 1) * envelope_size;
14532
14533 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14535
14536 fidl::encoding::encode_in_envelope_optional::<
14541 u8,
14542 fidl::encoding::DefaultFuchsiaResourceDialect,
14543 >(
14544 self.uint8_member.as_ref().map(<u8 as fidl::encoding::ValueTypeMarker>::borrow),
14545 encoder,
14546 offset + cur_offset,
14547 depth,
14548 )?;
14549
14550 _prev_end_offset = cur_offset + envelope_size;
14551 if 7 > max_ordinal {
14552 return Ok(());
14553 }
14554
14555 let cur_offset: usize = (7 - 1) * envelope_size;
14558
14559 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14561
14562 fidl::encoding::encode_in_envelope_optional::<
14567 u16,
14568 fidl::encoding::DefaultFuchsiaResourceDialect,
14569 >(
14570 self.uint16_member.as_ref().map(<u16 as fidl::encoding::ValueTypeMarker>::borrow),
14571 encoder,
14572 offset + cur_offset,
14573 depth,
14574 )?;
14575
14576 _prev_end_offset = cur_offset + envelope_size;
14577 if 8 > max_ordinal {
14578 return Ok(());
14579 }
14580
14581 let cur_offset: usize = (8 - 1) * envelope_size;
14584
14585 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14587
14588 fidl::encoding::encode_in_envelope_optional::<
14593 u32,
14594 fidl::encoding::DefaultFuchsiaResourceDialect,
14595 >(
14596 self.uint32_member.as_ref().map(<u32 as fidl::encoding::ValueTypeMarker>::borrow),
14597 encoder,
14598 offset + cur_offset,
14599 depth,
14600 )?;
14601
14602 _prev_end_offset = cur_offset + envelope_size;
14603 if 9 > max_ordinal {
14604 return Ok(());
14605 }
14606
14607 let cur_offset: usize = (9 - 1) * envelope_size;
14610
14611 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14613
14614 fidl::encoding::encode_in_envelope_optional::<
14619 u64,
14620 fidl::encoding::DefaultFuchsiaResourceDialect,
14621 >(
14622 self.uint64_member.as_ref().map(<u64 as fidl::encoding::ValueTypeMarker>::borrow),
14623 encoder,
14624 offset + cur_offset,
14625 depth,
14626 )?;
14627
14628 _prev_end_offset = cur_offset + envelope_size;
14629 if 10 > max_ordinal {
14630 return Ok(());
14631 }
14632
14633 let cur_offset: usize = (10 - 1) * envelope_size;
14636
14637 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14639
14640 fidl::encoding::encode_in_envelope_optional::<
14645 f32,
14646 fidl::encoding::DefaultFuchsiaResourceDialect,
14647 >(
14648 self.float32_member.as_ref().map(<f32 as fidl::encoding::ValueTypeMarker>::borrow),
14649 encoder,
14650 offset + cur_offset,
14651 depth,
14652 )?;
14653
14654 _prev_end_offset = cur_offset + envelope_size;
14655 if 11 > max_ordinal {
14656 return Ok(());
14657 }
14658
14659 let cur_offset: usize = (11 - 1) * envelope_size;
14662
14663 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14665
14666 fidl::encoding::encode_in_envelope_optional::<
14671 f64,
14672 fidl::encoding::DefaultFuchsiaResourceDialect,
14673 >(
14674 self.float64_member.as_ref().map(<f64 as fidl::encoding::ValueTypeMarker>::borrow),
14675 encoder,
14676 offset + cur_offset,
14677 depth,
14678 )?;
14679
14680 _prev_end_offset = cur_offset + envelope_size;
14681 if 12 > max_ordinal {
14682 return Ok(());
14683 }
14684
14685 let cur_offset: usize = (12 - 1) * envelope_size;
14688
14689 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14691
14692 fidl::encoding::encode_in_envelope_optional::<
14697 DefaultEnum,
14698 fidl::encoding::DefaultFuchsiaResourceDialect,
14699 >(
14700 self.enum_member
14701 .as_ref()
14702 .map(<DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow),
14703 encoder,
14704 offset + cur_offset,
14705 depth,
14706 )?;
14707
14708 _prev_end_offset = cur_offset + envelope_size;
14709 if 13 > max_ordinal {
14710 return Ok(());
14711 }
14712
14713 let cur_offset: usize = (13 - 1) * envelope_size;
14716
14717 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14719
14720 fidl::encoding::encode_in_envelope_optional::<
14725 DefaultBits,
14726 fidl::encoding::DefaultFuchsiaResourceDialect,
14727 >(
14728 self.bits_member
14729 .as_ref()
14730 .map(<DefaultBits as fidl::encoding::ValueTypeMarker>::borrow),
14731 encoder,
14732 offset + cur_offset,
14733 depth,
14734 )?;
14735
14736 _prev_end_offset = cur_offset + envelope_size;
14737 if 14 > max_ordinal {
14738 return Ok(());
14739 }
14740
14741 let cur_offset: usize = (14 - 1) * envelope_size;
14744
14745 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14747
14748 fidl::encoding::encode_in_envelope_optional::<
14753 fidl::encoding::HandleType<
14754 fidl::NullableHandle,
14755 { fidl::ObjectType::NONE.into_raw() },
14756 2147483648,
14757 >,
14758 fidl::encoding::DefaultFuchsiaResourceDialect,
14759 >(
14760 self.handle_member.as_mut().map(
14761 <fidl::encoding::HandleType<
14762 fidl::NullableHandle,
14763 { fidl::ObjectType::NONE.into_raw() },
14764 2147483648,
14765 > as fidl::encoding::ResourceTypeMarker>::take_or_borrow,
14766 ),
14767 encoder,
14768 offset + cur_offset,
14769 depth,
14770 )?;
14771
14772 _prev_end_offset = cur_offset + envelope_size;
14773 if 15 > max_ordinal {
14774 return Ok(());
14775 }
14776
14777 let cur_offset: usize = (15 - 1) * envelope_size;
14780
14781 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14783
14784 fidl::encoding::encode_in_envelope_optional::<
14789 fidl::encoding::UnboundedString,
14790 fidl::encoding::DefaultFuchsiaResourceDialect,
14791 >(
14792 self.string_member.as_ref().map(
14793 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow,
14794 ),
14795 encoder,
14796 offset + cur_offset,
14797 depth,
14798 )?;
14799
14800 _prev_end_offset = cur_offset + envelope_size;
14801 if 16 > max_ordinal {
14802 return Ok(());
14803 }
14804
14805 let cur_offset: usize = (16 - 1) * envelope_size;
14808
14809 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14811
14812 fidl::encoding::encode_in_envelope_optional::<
14817 ThisIsAStruct,
14818 fidl::encoding::DefaultFuchsiaResourceDialect,
14819 >(
14820 self.struct_member
14821 .as_ref()
14822 .map(<ThisIsAStruct as fidl::encoding::ValueTypeMarker>::borrow),
14823 encoder,
14824 offset + cur_offset,
14825 depth,
14826 )?;
14827
14828 _prev_end_offset = cur_offset + envelope_size;
14829 if 17 > max_ordinal {
14830 return Ok(());
14831 }
14832
14833 let cur_offset: usize = (17 - 1) * envelope_size;
14836
14837 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14839
14840 fidl::encoding::encode_in_envelope_optional::<
14845 ThisIsAUnion,
14846 fidl::encoding::DefaultFuchsiaResourceDialect,
14847 >(
14848 self.union_member
14849 .as_ref()
14850 .map(<ThisIsAUnion as fidl::encoding::ValueTypeMarker>::borrow),
14851 encoder,
14852 offset + cur_offset,
14853 depth,
14854 )?;
14855
14856 _prev_end_offset = cur_offset + envelope_size;
14857 if 18 > max_ordinal {
14858 return Ok(());
14859 }
14860
14861 let cur_offset: usize = (18 - 1) * envelope_size;
14864
14865 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14867
14868 fidl::encoding::encode_in_envelope_optional::<
14873 fidl::encoding::Array<u32, 3>,
14874 fidl::encoding::DefaultFuchsiaResourceDialect,
14875 >(
14876 self.array_member.as_ref().map(
14877 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow,
14878 ),
14879 encoder,
14880 offset + cur_offset,
14881 depth,
14882 )?;
14883
14884 _prev_end_offset = cur_offset + envelope_size;
14885 if 19 > max_ordinal {
14886 return Ok(());
14887 }
14888
14889 let cur_offset: usize = (19 - 1) * envelope_size;
14892
14893 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14895
14896 fidl::encoding::encode_in_envelope_optional::<fidl::encoding::UnboundedVector<u32>, fidl::encoding::DefaultFuchsiaResourceDialect>(
14901 self.vector_member.as_ref().map(<fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow),
14902 encoder, offset + cur_offset, depth
14903 )?;
14904
14905 _prev_end_offset = cur_offset + envelope_size;
14906 if 20 > max_ordinal {
14907 return Ok(());
14908 }
14909
14910 let cur_offset: usize = (20 - 1) * envelope_size;
14913
14914 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14916
14917 fidl::encoding::encode_in_envelope_optional::<
14922 ThisIsATable,
14923 fidl::encoding::DefaultFuchsiaResourceDialect,
14924 >(
14925 self.table_member
14926 .as_ref()
14927 .map(<ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow),
14928 encoder,
14929 offset + cur_offset,
14930 depth,
14931 )?;
14932
14933 _prev_end_offset = cur_offset + envelope_size;
14934 if 21 > max_ordinal {
14935 return Ok(());
14936 }
14937
14938 let cur_offset: usize = (21 - 1) * envelope_size;
14941
14942 encoder.padding(offset + _prev_end_offset, cur_offset - _prev_end_offset);
14944
14945 fidl::encoding::encode_in_envelope_optional::<
14950 ThisIsAXunion,
14951 fidl::encoding::DefaultFuchsiaResourceDialect,
14952 >(
14953 self.xunion_member
14954 .as_ref()
14955 .map(<ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow),
14956 encoder,
14957 offset + cur_offset,
14958 depth,
14959 )?;
14960
14961 _prev_end_offset = cur_offset + envelope_size;
14962
14963 Ok(())
14964 }
14965 }
14966
14967 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect> for AllTypesTable {
14968 #[inline(always)]
14969 fn new_empty() -> Self {
14970 Self::default()
14971 }
14972
14973 unsafe fn decode(
14974 &mut self,
14975 decoder: &mut fidl::encoding::Decoder<
14976 '_,
14977 fidl::encoding::DefaultFuchsiaResourceDialect,
14978 >,
14979 offset: usize,
14980 mut depth: fidl::encoding::Depth,
14981 ) -> fidl::Result<()> {
14982 decoder.debug_check_bounds::<Self>(offset);
14983 let len = match fidl::encoding::decode_vector_header(decoder, offset)? {
14984 None => return Err(fidl::Error::NotNullable),
14985 Some(len) => len,
14986 };
14987 if len == 0 {
14989 return Ok(());
14990 };
14991 depth.increment()?;
14992 let envelope_size = 8;
14993 let bytes_len = len * envelope_size;
14994 let offset = decoder.out_of_line_offset(bytes_len)?;
14995 let mut _next_ordinal_to_read = 0;
14997 let mut next_offset = offset;
14998 let end_offset = offset + bytes_len;
14999 _next_ordinal_to_read += 1;
15000 if next_offset >= end_offset {
15001 return Ok(());
15002 }
15003
15004 while _next_ordinal_to_read < 1 {
15006 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15007 _next_ordinal_to_read += 1;
15008 next_offset += envelope_size;
15009 }
15010
15011 let next_out_of_line = decoder.next_out_of_line();
15012 let handles_before = decoder.remaining_handles();
15013 if let Some((inlined, num_bytes, num_handles)) =
15014 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15015 {
15016 let member_inline_size =
15017 <bool as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15018 if inlined != (member_inline_size <= 4) {
15019 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15020 }
15021 let inner_offset;
15022 let mut inner_depth = depth.clone();
15023 if inlined {
15024 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15025 inner_offset = next_offset;
15026 } else {
15027 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15028 inner_depth.increment()?;
15029 }
15030 let val_ref = self.bool_member.get_or_insert_with(|| {
15031 fidl::new_empty!(bool, fidl::encoding::DefaultFuchsiaResourceDialect)
15032 });
15033 fidl::decode!(
15034 bool,
15035 fidl::encoding::DefaultFuchsiaResourceDialect,
15036 val_ref,
15037 decoder,
15038 inner_offset,
15039 inner_depth
15040 )?;
15041 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15042 {
15043 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15044 }
15045 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15046 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15047 }
15048 }
15049
15050 next_offset += envelope_size;
15051 _next_ordinal_to_read += 1;
15052 if next_offset >= end_offset {
15053 return Ok(());
15054 }
15055
15056 while _next_ordinal_to_read < 2 {
15058 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15059 _next_ordinal_to_read += 1;
15060 next_offset += envelope_size;
15061 }
15062
15063 let next_out_of_line = decoder.next_out_of_line();
15064 let handles_before = decoder.remaining_handles();
15065 if let Some((inlined, num_bytes, num_handles)) =
15066 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15067 {
15068 let member_inline_size =
15069 <i8 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15070 if inlined != (member_inline_size <= 4) {
15071 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15072 }
15073 let inner_offset;
15074 let mut inner_depth = depth.clone();
15075 if inlined {
15076 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15077 inner_offset = next_offset;
15078 } else {
15079 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15080 inner_depth.increment()?;
15081 }
15082 let val_ref = self.int8_member.get_or_insert_with(|| {
15083 fidl::new_empty!(i8, fidl::encoding::DefaultFuchsiaResourceDialect)
15084 });
15085 fidl::decode!(
15086 i8,
15087 fidl::encoding::DefaultFuchsiaResourceDialect,
15088 val_ref,
15089 decoder,
15090 inner_offset,
15091 inner_depth
15092 )?;
15093 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15094 {
15095 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15096 }
15097 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15098 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15099 }
15100 }
15101
15102 next_offset += envelope_size;
15103 _next_ordinal_to_read += 1;
15104 if next_offset >= end_offset {
15105 return Ok(());
15106 }
15107
15108 while _next_ordinal_to_read < 3 {
15110 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15111 _next_ordinal_to_read += 1;
15112 next_offset += envelope_size;
15113 }
15114
15115 let next_out_of_line = decoder.next_out_of_line();
15116 let handles_before = decoder.remaining_handles();
15117 if let Some((inlined, num_bytes, num_handles)) =
15118 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15119 {
15120 let member_inline_size =
15121 <i16 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15122 if inlined != (member_inline_size <= 4) {
15123 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15124 }
15125 let inner_offset;
15126 let mut inner_depth = depth.clone();
15127 if inlined {
15128 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15129 inner_offset = next_offset;
15130 } else {
15131 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15132 inner_depth.increment()?;
15133 }
15134 let val_ref = self.int16_member.get_or_insert_with(|| {
15135 fidl::new_empty!(i16, fidl::encoding::DefaultFuchsiaResourceDialect)
15136 });
15137 fidl::decode!(
15138 i16,
15139 fidl::encoding::DefaultFuchsiaResourceDialect,
15140 val_ref,
15141 decoder,
15142 inner_offset,
15143 inner_depth
15144 )?;
15145 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15146 {
15147 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15148 }
15149 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15150 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15151 }
15152 }
15153
15154 next_offset += envelope_size;
15155 _next_ordinal_to_read += 1;
15156 if next_offset >= end_offset {
15157 return Ok(());
15158 }
15159
15160 while _next_ordinal_to_read < 4 {
15162 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15163 _next_ordinal_to_read += 1;
15164 next_offset += envelope_size;
15165 }
15166
15167 let next_out_of_line = decoder.next_out_of_line();
15168 let handles_before = decoder.remaining_handles();
15169 if let Some((inlined, num_bytes, num_handles)) =
15170 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15171 {
15172 let member_inline_size =
15173 <i32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15174 if inlined != (member_inline_size <= 4) {
15175 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15176 }
15177 let inner_offset;
15178 let mut inner_depth = depth.clone();
15179 if inlined {
15180 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15181 inner_offset = next_offset;
15182 } else {
15183 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15184 inner_depth.increment()?;
15185 }
15186 let val_ref = self.int32_member.get_or_insert_with(|| {
15187 fidl::new_empty!(i32, fidl::encoding::DefaultFuchsiaResourceDialect)
15188 });
15189 fidl::decode!(
15190 i32,
15191 fidl::encoding::DefaultFuchsiaResourceDialect,
15192 val_ref,
15193 decoder,
15194 inner_offset,
15195 inner_depth
15196 )?;
15197 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15198 {
15199 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15200 }
15201 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15202 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15203 }
15204 }
15205
15206 next_offset += envelope_size;
15207 _next_ordinal_to_read += 1;
15208 if next_offset >= end_offset {
15209 return Ok(());
15210 }
15211
15212 while _next_ordinal_to_read < 5 {
15214 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15215 _next_ordinal_to_read += 1;
15216 next_offset += envelope_size;
15217 }
15218
15219 let next_out_of_line = decoder.next_out_of_line();
15220 let handles_before = decoder.remaining_handles();
15221 if let Some((inlined, num_bytes, num_handles)) =
15222 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15223 {
15224 let member_inline_size =
15225 <i64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15226 if inlined != (member_inline_size <= 4) {
15227 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15228 }
15229 let inner_offset;
15230 let mut inner_depth = depth.clone();
15231 if inlined {
15232 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15233 inner_offset = next_offset;
15234 } else {
15235 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15236 inner_depth.increment()?;
15237 }
15238 let val_ref = self.int64_member.get_or_insert_with(|| {
15239 fidl::new_empty!(i64, fidl::encoding::DefaultFuchsiaResourceDialect)
15240 });
15241 fidl::decode!(
15242 i64,
15243 fidl::encoding::DefaultFuchsiaResourceDialect,
15244 val_ref,
15245 decoder,
15246 inner_offset,
15247 inner_depth
15248 )?;
15249 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15250 {
15251 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15252 }
15253 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15254 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15255 }
15256 }
15257
15258 next_offset += envelope_size;
15259 _next_ordinal_to_read += 1;
15260 if next_offset >= end_offset {
15261 return Ok(());
15262 }
15263
15264 while _next_ordinal_to_read < 6 {
15266 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15267 _next_ordinal_to_read += 1;
15268 next_offset += envelope_size;
15269 }
15270
15271 let next_out_of_line = decoder.next_out_of_line();
15272 let handles_before = decoder.remaining_handles();
15273 if let Some((inlined, num_bytes, num_handles)) =
15274 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15275 {
15276 let member_inline_size =
15277 <u8 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15278 if inlined != (member_inline_size <= 4) {
15279 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15280 }
15281 let inner_offset;
15282 let mut inner_depth = depth.clone();
15283 if inlined {
15284 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15285 inner_offset = next_offset;
15286 } else {
15287 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15288 inner_depth.increment()?;
15289 }
15290 let val_ref = self.uint8_member.get_or_insert_with(|| {
15291 fidl::new_empty!(u8, fidl::encoding::DefaultFuchsiaResourceDialect)
15292 });
15293 fidl::decode!(
15294 u8,
15295 fidl::encoding::DefaultFuchsiaResourceDialect,
15296 val_ref,
15297 decoder,
15298 inner_offset,
15299 inner_depth
15300 )?;
15301 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15302 {
15303 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15304 }
15305 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15306 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15307 }
15308 }
15309
15310 next_offset += envelope_size;
15311 _next_ordinal_to_read += 1;
15312 if next_offset >= end_offset {
15313 return Ok(());
15314 }
15315
15316 while _next_ordinal_to_read < 7 {
15318 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15319 _next_ordinal_to_read += 1;
15320 next_offset += envelope_size;
15321 }
15322
15323 let next_out_of_line = decoder.next_out_of_line();
15324 let handles_before = decoder.remaining_handles();
15325 if let Some((inlined, num_bytes, num_handles)) =
15326 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15327 {
15328 let member_inline_size =
15329 <u16 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15330 if inlined != (member_inline_size <= 4) {
15331 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15332 }
15333 let inner_offset;
15334 let mut inner_depth = depth.clone();
15335 if inlined {
15336 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15337 inner_offset = next_offset;
15338 } else {
15339 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15340 inner_depth.increment()?;
15341 }
15342 let val_ref = self.uint16_member.get_or_insert_with(|| {
15343 fidl::new_empty!(u16, fidl::encoding::DefaultFuchsiaResourceDialect)
15344 });
15345 fidl::decode!(
15346 u16,
15347 fidl::encoding::DefaultFuchsiaResourceDialect,
15348 val_ref,
15349 decoder,
15350 inner_offset,
15351 inner_depth
15352 )?;
15353 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15354 {
15355 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15356 }
15357 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15358 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15359 }
15360 }
15361
15362 next_offset += envelope_size;
15363 _next_ordinal_to_read += 1;
15364 if next_offset >= end_offset {
15365 return Ok(());
15366 }
15367
15368 while _next_ordinal_to_read < 8 {
15370 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15371 _next_ordinal_to_read += 1;
15372 next_offset += envelope_size;
15373 }
15374
15375 let next_out_of_line = decoder.next_out_of_line();
15376 let handles_before = decoder.remaining_handles();
15377 if let Some((inlined, num_bytes, num_handles)) =
15378 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15379 {
15380 let member_inline_size =
15381 <u32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15382 if inlined != (member_inline_size <= 4) {
15383 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15384 }
15385 let inner_offset;
15386 let mut inner_depth = depth.clone();
15387 if inlined {
15388 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15389 inner_offset = next_offset;
15390 } else {
15391 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15392 inner_depth.increment()?;
15393 }
15394 let val_ref = self.uint32_member.get_or_insert_with(|| {
15395 fidl::new_empty!(u32, fidl::encoding::DefaultFuchsiaResourceDialect)
15396 });
15397 fidl::decode!(
15398 u32,
15399 fidl::encoding::DefaultFuchsiaResourceDialect,
15400 val_ref,
15401 decoder,
15402 inner_offset,
15403 inner_depth
15404 )?;
15405 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15406 {
15407 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15408 }
15409 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15410 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15411 }
15412 }
15413
15414 next_offset += envelope_size;
15415 _next_ordinal_to_read += 1;
15416 if next_offset >= end_offset {
15417 return Ok(());
15418 }
15419
15420 while _next_ordinal_to_read < 9 {
15422 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15423 _next_ordinal_to_read += 1;
15424 next_offset += envelope_size;
15425 }
15426
15427 let next_out_of_line = decoder.next_out_of_line();
15428 let handles_before = decoder.remaining_handles();
15429 if let Some((inlined, num_bytes, num_handles)) =
15430 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15431 {
15432 let member_inline_size =
15433 <u64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15434 if inlined != (member_inline_size <= 4) {
15435 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15436 }
15437 let inner_offset;
15438 let mut inner_depth = depth.clone();
15439 if inlined {
15440 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15441 inner_offset = next_offset;
15442 } else {
15443 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15444 inner_depth.increment()?;
15445 }
15446 let val_ref = self.uint64_member.get_or_insert_with(|| {
15447 fidl::new_empty!(u64, fidl::encoding::DefaultFuchsiaResourceDialect)
15448 });
15449 fidl::decode!(
15450 u64,
15451 fidl::encoding::DefaultFuchsiaResourceDialect,
15452 val_ref,
15453 decoder,
15454 inner_offset,
15455 inner_depth
15456 )?;
15457 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15458 {
15459 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15460 }
15461 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15462 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15463 }
15464 }
15465
15466 next_offset += envelope_size;
15467 _next_ordinal_to_read += 1;
15468 if next_offset >= end_offset {
15469 return Ok(());
15470 }
15471
15472 while _next_ordinal_to_read < 10 {
15474 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15475 _next_ordinal_to_read += 1;
15476 next_offset += envelope_size;
15477 }
15478
15479 let next_out_of_line = decoder.next_out_of_line();
15480 let handles_before = decoder.remaining_handles();
15481 if let Some((inlined, num_bytes, num_handles)) =
15482 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15483 {
15484 let member_inline_size =
15485 <f32 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15486 if inlined != (member_inline_size <= 4) {
15487 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15488 }
15489 let inner_offset;
15490 let mut inner_depth = depth.clone();
15491 if inlined {
15492 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15493 inner_offset = next_offset;
15494 } else {
15495 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15496 inner_depth.increment()?;
15497 }
15498 let val_ref = self.float32_member.get_or_insert_with(|| {
15499 fidl::new_empty!(f32, fidl::encoding::DefaultFuchsiaResourceDialect)
15500 });
15501 fidl::decode!(
15502 f32,
15503 fidl::encoding::DefaultFuchsiaResourceDialect,
15504 val_ref,
15505 decoder,
15506 inner_offset,
15507 inner_depth
15508 )?;
15509 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15510 {
15511 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15512 }
15513 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15514 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15515 }
15516 }
15517
15518 next_offset += envelope_size;
15519 _next_ordinal_to_read += 1;
15520 if next_offset >= end_offset {
15521 return Ok(());
15522 }
15523
15524 while _next_ordinal_to_read < 11 {
15526 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15527 _next_ordinal_to_read += 1;
15528 next_offset += envelope_size;
15529 }
15530
15531 let next_out_of_line = decoder.next_out_of_line();
15532 let handles_before = decoder.remaining_handles();
15533 if let Some((inlined, num_bytes, num_handles)) =
15534 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15535 {
15536 let member_inline_size =
15537 <f64 as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15538 if inlined != (member_inline_size <= 4) {
15539 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15540 }
15541 let inner_offset;
15542 let mut inner_depth = depth.clone();
15543 if inlined {
15544 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15545 inner_offset = next_offset;
15546 } else {
15547 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15548 inner_depth.increment()?;
15549 }
15550 let val_ref = self.float64_member.get_or_insert_with(|| {
15551 fidl::new_empty!(f64, fidl::encoding::DefaultFuchsiaResourceDialect)
15552 });
15553 fidl::decode!(
15554 f64,
15555 fidl::encoding::DefaultFuchsiaResourceDialect,
15556 val_ref,
15557 decoder,
15558 inner_offset,
15559 inner_depth
15560 )?;
15561 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15562 {
15563 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15564 }
15565 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15566 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15567 }
15568 }
15569
15570 next_offset += envelope_size;
15571 _next_ordinal_to_read += 1;
15572 if next_offset >= end_offset {
15573 return Ok(());
15574 }
15575
15576 while _next_ordinal_to_read < 12 {
15578 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15579 _next_ordinal_to_read += 1;
15580 next_offset += envelope_size;
15581 }
15582
15583 let next_out_of_line = decoder.next_out_of_line();
15584 let handles_before = decoder.remaining_handles();
15585 if let Some((inlined, num_bytes, num_handles)) =
15586 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15587 {
15588 let member_inline_size =
15589 <DefaultEnum as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15590 if inlined != (member_inline_size <= 4) {
15591 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15592 }
15593 let inner_offset;
15594 let mut inner_depth = depth.clone();
15595 if inlined {
15596 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15597 inner_offset = next_offset;
15598 } else {
15599 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15600 inner_depth.increment()?;
15601 }
15602 let val_ref = self.enum_member.get_or_insert_with(|| {
15603 fidl::new_empty!(DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect)
15604 });
15605 fidl::decode!(
15606 DefaultEnum,
15607 fidl::encoding::DefaultFuchsiaResourceDialect,
15608 val_ref,
15609 decoder,
15610 inner_offset,
15611 inner_depth
15612 )?;
15613 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15614 {
15615 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15616 }
15617 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15618 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15619 }
15620 }
15621
15622 next_offset += envelope_size;
15623 _next_ordinal_to_read += 1;
15624 if next_offset >= end_offset {
15625 return Ok(());
15626 }
15627
15628 while _next_ordinal_to_read < 13 {
15630 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15631 _next_ordinal_to_read += 1;
15632 next_offset += envelope_size;
15633 }
15634
15635 let next_out_of_line = decoder.next_out_of_line();
15636 let handles_before = decoder.remaining_handles();
15637 if let Some((inlined, num_bytes, num_handles)) =
15638 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15639 {
15640 let member_inline_size =
15641 <DefaultBits as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15642 if inlined != (member_inline_size <= 4) {
15643 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15644 }
15645 let inner_offset;
15646 let mut inner_depth = depth.clone();
15647 if inlined {
15648 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15649 inner_offset = next_offset;
15650 } else {
15651 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15652 inner_depth.increment()?;
15653 }
15654 let val_ref = self.bits_member.get_or_insert_with(|| {
15655 fidl::new_empty!(DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect)
15656 });
15657 fidl::decode!(
15658 DefaultBits,
15659 fidl::encoding::DefaultFuchsiaResourceDialect,
15660 val_ref,
15661 decoder,
15662 inner_offset,
15663 inner_depth
15664 )?;
15665 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15666 {
15667 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15668 }
15669 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15670 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15671 }
15672 }
15673
15674 next_offset += envelope_size;
15675 _next_ordinal_to_read += 1;
15676 if next_offset >= end_offset {
15677 return Ok(());
15678 }
15679
15680 while _next_ordinal_to_read < 14 {
15682 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15683 _next_ordinal_to_read += 1;
15684 next_offset += envelope_size;
15685 }
15686
15687 let next_out_of_line = decoder.next_out_of_line();
15688 let handles_before = decoder.remaining_handles();
15689 if let Some((inlined, num_bytes, num_handles)) =
15690 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15691 {
15692 let member_inline_size = <fidl::encoding::HandleType<
15693 fidl::NullableHandle,
15694 { fidl::ObjectType::NONE.into_raw() },
15695 2147483648,
15696 > as fidl::encoding::TypeMarker>::inline_size(
15697 decoder.context
15698 );
15699 if inlined != (member_inline_size <= 4) {
15700 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15701 }
15702 let inner_offset;
15703 let mut inner_depth = depth.clone();
15704 if inlined {
15705 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15706 inner_offset = next_offset;
15707 } else {
15708 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15709 inner_depth.increment()?;
15710 }
15711 let val_ref =
15712 self.handle_member.get_or_insert_with(|| fidl::new_empty!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect));
15713 fidl::decode!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, val_ref, decoder, inner_offset, inner_depth)?;
15714 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15715 {
15716 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15717 }
15718 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15719 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15720 }
15721 }
15722
15723 next_offset += envelope_size;
15724 _next_ordinal_to_read += 1;
15725 if next_offset >= end_offset {
15726 return Ok(());
15727 }
15728
15729 while _next_ordinal_to_read < 15 {
15731 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15732 _next_ordinal_to_read += 1;
15733 next_offset += envelope_size;
15734 }
15735
15736 let next_out_of_line = decoder.next_out_of_line();
15737 let handles_before = decoder.remaining_handles();
15738 if let Some((inlined, num_bytes, num_handles)) =
15739 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15740 {
15741 let member_inline_size =
15742 <fidl::encoding::UnboundedString as fidl::encoding::TypeMarker>::inline_size(
15743 decoder.context,
15744 );
15745 if inlined != (member_inline_size <= 4) {
15746 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15747 }
15748 let inner_offset;
15749 let mut inner_depth = depth.clone();
15750 if inlined {
15751 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15752 inner_offset = next_offset;
15753 } else {
15754 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15755 inner_depth.increment()?;
15756 }
15757 let val_ref = self.string_member.get_or_insert_with(|| {
15758 fidl::new_empty!(
15759 fidl::encoding::UnboundedString,
15760 fidl::encoding::DefaultFuchsiaResourceDialect
15761 )
15762 });
15763 fidl::decode!(
15764 fidl::encoding::UnboundedString,
15765 fidl::encoding::DefaultFuchsiaResourceDialect,
15766 val_ref,
15767 decoder,
15768 inner_offset,
15769 inner_depth
15770 )?;
15771 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15772 {
15773 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15774 }
15775 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15776 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15777 }
15778 }
15779
15780 next_offset += envelope_size;
15781 _next_ordinal_to_read += 1;
15782 if next_offset >= end_offset {
15783 return Ok(());
15784 }
15785
15786 while _next_ordinal_to_read < 16 {
15788 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15789 _next_ordinal_to_read += 1;
15790 next_offset += envelope_size;
15791 }
15792
15793 let next_out_of_line = decoder.next_out_of_line();
15794 let handles_before = decoder.remaining_handles();
15795 if let Some((inlined, num_bytes, num_handles)) =
15796 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15797 {
15798 let member_inline_size =
15799 <ThisIsAStruct as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15800 if inlined != (member_inline_size <= 4) {
15801 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15802 }
15803 let inner_offset;
15804 let mut inner_depth = depth.clone();
15805 if inlined {
15806 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15807 inner_offset = next_offset;
15808 } else {
15809 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15810 inner_depth.increment()?;
15811 }
15812 let val_ref = self.struct_member.get_or_insert_with(|| {
15813 fidl::new_empty!(ThisIsAStruct, fidl::encoding::DefaultFuchsiaResourceDialect)
15814 });
15815 fidl::decode!(
15816 ThisIsAStruct,
15817 fidl::encoding::DefaultFuchsiaResourceDialect,
15818 val_ref,
15819 decoder,
15820 inner_offset,
15821 inner_depth
15822 )?;
15823 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15824 {
15825 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15826 }
15827 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15828 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15829 }
15830 }
15831
15832 next_offset += envelope_size;
15833 _next_ordinal_to_read += 1;
15834 if next_offset >= end_offset {
15835 return Ok(());
15836 }
15837
15838 while _next_ordinal_to_read < 17 {
15840 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15841 _next_ordinal_to_read += 1;
15842 next_offset += envelope_size;
15843 }
15844
15845 let next_out_of_line = decoder.next_out_of_line();
15846 let handles_before = decoder.remaining_handles();
15847 if let Some((inlined, num_bytes, num_handles)) =
15848 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15849 {
15850 let member_inline_size =
15851 <ThisIsAUnion as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15852 if inlined != (member_inline_size <= 4) {
15853 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15854 }
15855 let inner_offset;
15856 let mut inner_depth = depth.clone();
15857 if inlined {
15858 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15859 inner_offset = next_offset;
15860 } else {
15861 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15862 inner_depth.increment()?;
15863 }
15864 let val_ref = self.union_member.get_or_insert_with(|| {
15865 fidl::new_empty!(ThisIsAUnion, fidl::encoding::DefaultFuchsiaResourceDialect)
15866 });
15867 fidl::decode!(
15868 ThisIsAUnion,
15869 fidl::encoding::DefaultFuchsiaResourceDialect,
15870 val_ref,
15871 decoder,
15872 inner_offset,
15873 inner_depth
15874 )?;
15875 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15876 {
15877 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15878 }
15879 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15880 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15881 }
15882 }
15883
15884 next_offset += envelope_size;
15885 _next_ordinal_to_read += 1;
15886 if next_offset >= end_offset {
15887 return Ok(());
15888 }
15889
15890 while _next_ordinal_to_read < 18 {
15892 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15893 _next_ordinal_to_read += 1;
15894 next_offset += envelope_size;
15895 }
15896
15897 let next_out_of_line = decoder.next_out_of_line();
15898 let handles_before = decoder.remaining_handles();
15899 if let Some((inlined, num_bytes, num_handles)) =
15900 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15901 {
15902 let member_inline_size =
15903 <fidl::encoding::Array<u32, 3> as fidl::encoding::TypeMarker>::inline_size(
15904 decoder.context,
15905 );
15906 if inlined != (member_inline_size <= 4) {
15907 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15908 }
15909 let inner_offset;
15910 let mut inner_depth = depth.clone();
15911 if inlined {
15912 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15913 inner_offset = next_offset;
15914 } else {
15915 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15916 inner_depth.increment()?;
15917 }
15918 let val_ref =
15919 self.array_member.get_or_insert_with(|| fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect));
15920 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, val_ref, decoder, inner_offset, inner_depth)?;
15921 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15922 {
15923 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15924 }
15925 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15926 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15927 }
15928 }
15929
15930 next_offset += envelope_size;
15931 _next_ordinal_to_read += 1;
15932 if next_offset >= end_offset {
15933 return Ok(());
15934 }
15935
15936 while _next_ordinal_to_read < 19 {
15938 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15939 _next_ordinal_to_read += 1;
15940 next_offset += envelope_size;
15941 }
15942
15943 let next_out_of_line = decoder.next_out_of_line();
15944 let handles_before = decoder.remaining_handles();
15945 if let Some((inlined, num_bytes, num_handles)) =
15946 fidl::encoding::decode_envelope_header(decoder, next_offset)?
15947 {
15948 let member_inline_size = <fidl::encoding::UnboundedVector<u32> as fidl::encoding::TypeMarker>::inline_size(decoder.context);
15949 if inlined != (member_inline_size <= 4) {
15950 return Err(fidl::Error::InvalidInlineBitInEnvelope);
15951 }
15952 let inner_offset;
15953 let mut inner_depth = depth.clone();
15954 if inlined {
15955 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
15956 inner_offset = next_offset;
15957 } else {
15958 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
15959 inner_depth.increment()?;
15960 }
15961 let val_ref = self.vector_member.get_or_insert_with(|| {
15962 fidl::new_empty!(
15963 fidl::encoding::UnboundedVector<u32>,
15964 fidl::encoding::DefaultFuchsiaResourceDialect
15965 )
15966 });
15967 fidl::decode!(
15968 fidl::encoding::UnboundedVector<u32>,
15969 fidl::encoding::DefaultFuchsiaResourceDialect,
15970 val_ref,
15971 decoder,
15972 inner_offset,
15973 inner_depth
15974 )?;
15975 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
15976 {
15977 return Err(fidl::Error::InvalidNumBytesInEnvelope);
15978 }
15979 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
15980 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
15981 }
15982 }
15983
15984 next_offset += envelope_size;
15985 _next_ordinal_to_read += 1;
15986 if next_offset >= end_offset {
15987 return Ok(());
15988 }
15989
15990 while _next_ordinal_to_read < 20 {
15992 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
15993 _next_ordinal_to_read += 1;
15994 next_offset += envelope_size;
15995 }
15996
15997 let next_out_of_line = decoder.next_out_of_line();
15998 let handles_before = decoder.remaining_handles();
15999 if let Some((inlined, num_bytes, num_handles)) =
16000 fidl::encoding::decode_envelope_header(decoder, next_offset)?
16001 {
16002 let member_inline_size =
16003 <ThisIsATable as fidl::encoding::TypeMarker>::inline_size(decoder.context);
16004 if inlined != (member_inline_size <= 4) {
16005 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16006 }
16007 let inner_offset;
16008 let mut inner_depth = depth.clone();
16009 if inlined {
16010 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
16011 inner_offset = next_offset;
16012 } else {
16013 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16014 inner_depth.increment()?;
16015 }
16016 let val_ref = self.table_member.get_or_insert_with(|| {
16017 fidl::new_empty!(ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect)
16018 });
16019 fidl::decode!(
16020 ThisIsATable,
16021 fidl::encoding::DefaultFuchsiaResourceDialect,
16022 val_ref,
16023 decoder,
16024 inner_offset,
16025 inner_depth
16026 )?;
16027 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
16028 {
16029 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16030 }
16031 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16032 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16033 }
16034 }
16035
16036 next_offset += envelope_size;
16037 _next_ordinal_to_read += 1;
16038 if next_offset >= end_offset {
16039 return Ok(());
16040 }
16041
16042 while _next_ordinal_to_read < 21 {
16044 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16045 _next_ordinal_to_read += 1;
16046 next_offset += envelope_size;
16047 }
16048
16049 let next_out_of_line = decoder.next_out_of_line();
16050 let handles_before = decoder.remaining_handles();
16051 if let Some((inlined, num_bytes, num_handles)) =
16052 fidl::encoding::decode_envelope_header(decoder, next_offset)?
16053 {
16054 let member_inline_size =
16055 <ThisIsAXunion as fidl::encoding::TypeMarker>::inline_size(decoder.context);
16056 if inlined != (member_inline_size <= 4) {
16057 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16058 }
16059 let inner_offset;
16060 let mut inner_depth = depth.clone();
16061 if inlined {
16062 decoder.check_inline_envelope_padding(next_offset, member_inline_size)?;
16063 inner_offset = next_offset;
16064 } else {
16065 inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16066 inner_depth.increment()?;
16067 }
16068 let val_ref = self.xunion_member.get_or_insert_with(|| {
16069 fidl::new_empty!(ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect)
16070 });
16071 fidl::decode!(
16072 ThisIsAXunion,
16073 fidl::encoding::DefaultFuchsiaResourceDialect,
16074 val_ref,
16075 decoder,
16076 inner_offset,
16077 inner_depth
16078 )?;
16079 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize)
16080 {
16081 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16082 }
16083 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16084 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16085 }
16086 }
16087
16088 next_offset += envelope_size;
16089
16090 while next_offset < end_offset {
16092 _next_ordinal_to_read += 1;
16093 fidl::encoding::decode_unknown_envelope(decoder, next_offset, depth)?;
16094 next_offset += envelope_size;
16095 }
16096
16097 Ok(())
16098 }
16099 }
16100
16101 impl fidl::encoding::ResourceTypeMarker for AllTypesXunion {
16102 type Borrowed<'a> = &'a mut Self;
16103 fn take_or_borrow<'a>(
16104 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
16105 ) -> Self::Borrowed<'a> {
16106 value
16107 }
16108 }
16109
16110 unsafe impl fidl::encoding::TypeMarker for AllTypesXunion {
16111 type Owned = Self;
16112
16113 #[inline(always)]
16114 fn inline_align(_context: fidl::encoding::Context) -> usize {
16115 8
16116 }
16117
16118 #[inline(always)]
16119 fn inline_size(_context: fidl::encoding::Context) -> usize {
16120 16
16121 }
16122 }
16123
16124 unsafe impl
16125 fidl::encoding::Encode<AllTypesXunion, fidl::encoding::DefaultFuchsiaResourceDialect>
16126 for &mut AllTypesXunion
16127 {
16128 #[inline]
16129 unsafe fn encode(
16130 self,
16131 encoder: &mut fidl::encoding::Encoder<
16132 '_,
16133 fidl::encoding::DefaultFuchsiaResourceDialect,
16134 >,
16135 offset: usize,
16136 _depth: fidl::encoding::Depth,
16137 ) -> fidl::Result<()> {
16138 encoder.debug_check_bounds::<AllTypesXunion>(offset);
16139 encoder.write_num::<u64>(self.ordinal(), offset);
16140 match self {
16141 AllTypesXunion::BoolMember(ref val) => {
16142 fidl::encoding::encode_in_envelope::<bool, fidl::encoding::DefaultFuchsiaResourceDialect>(
16143 <bool as fidl::encoding::ValueTypeMarker>::borrow(val),
16144 encoder, offset + 8, _depth
16145 )
16146 }
16147 AllTypesXunion::Int8Member(ref val) => {
16148 fidl::encoding::encode_in_envelope::<i8, fidl::encoding::DefaultFuchsiaResourceDialect>(
16149 <i8 as fidl::encoding::ValueTypeMarker>::borrow(val),
16150 encoder, offset + 8, _depth
16151 )
16152 }
16153 AllTypesXunion::Int16Member(ref val) => {
16154 fidl::encoding::encode_in_envelope::<i16, fidl::encoding::DefaultFuchsiaResourceDialect>(
16155 <i16 as fidl::encoding::ValueTypeMarker>::borrow(val),
16156 encoder, offset + 8, _depth
16157 )
16158 }
16159 AllTypesXunion::Int32Member(ref val) => {
16160 fidl::encoding::encode_in_envelope::<i32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16161 <i32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16162 encoder, offset + 8, _depth
16163 )
16164 }
16165 AllTypesXunion::Int64Member(ref val) => {
16166 fidl::encoding::encode_in_envelope::<i64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16167 <i64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16168 encoder, offset + 8, _depth
16169 )
16170 }
16171 AllTypesXunion::Uint8Member(ref val) => {
16172 fidl::encoding::encode_in_envelope::<u8, fidl::encoding::DefaultFuchsiaResourceDialect>(
16173 <u8 as fidl::encoding::ValueTypeMarker>::borrow(val),
16174 encoder, offset + 8, _depth
16175 )
16176 }
16177 AllTypesXunion::Uint16Member(ref val) => {
16178 fidl::encoding::encode_in_envelope::<u16, fidl::encoding::DefaultFuchsiaResourceDialect>(
16179 <u16 as fidl::encoding::ValueTypeMarker>::borrow(val),
16180 encoder, offset + 8, _depth
16181 )
16182 }
16183 AllTypesXunion::Uint32Member(ref val) => {
16184 fidl::encoding::encode_in_envelope::<u32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16185 <u32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16186 encoder, offset + 8, _depth
16187 )
16188 }
16189 AllTypesXunion::Uint64Member(ref val) => {
16190 fidl::encoding::encode_in_envelope::<u64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16191 <u64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16192 encoder, offset + 8, _depth
16193 )
16194 }
16195 AllTypesXunion::Float32Member(ref val) => {
16196 fidl::encoding::encode_in_envelope::<f32, fidl::encoding::DefaultFuchsiaResourceDialect>(
16197 <f32 as fidl::encoding::ValueTypeMarker>::borrow(val),
16198 encoder, offset + 8, _depth
16199 )
16200 }
16201 AllTypesXunion::Float64Member(ref val) => {
16202 fidl::encoding::encode_in_envelope::<f64, fidl::encoding::DefaultFuchsiaResourceDialect>(
16203 <f64 as fidl::encoding::ValueTypeMarker>::borrow(val),
16204 encoder, offset + 8, _depth
16205 )
16206 }
16207 AllTypesXunion::EnumMember(ref val) => {
16208 fidl::encoding::encode_in_envelope::<DefaultEnum, fidl::encoding::DefaultFuchsiaResourceDialect>(
16209 <DefaultEnum as fidl::encoding::ValueTypeMarker>::borrow(val),
16210 encoder, offset + 8, _depth
16211 )
16212 }
16213 AllTypesXunion::BitsMember(ref val) => {
16214 fidl::encoding::encode_in_envelope::<DefaultBits, fidl::encoding::DefaultFuchsiaResourceDialect>(
16215 <DefaultBits as fidl::encoding::ValueTypeMarker>::borrow(val),
16216 encoder, offset + 8, _depth
16217 )
16218 }
16219 AllTypesXunion::HandleMember(ref mut val) => {
16220 fidl::encoding::encode_in_envelope::<fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16221 <fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648> as fidl::encoding::ResourceTypeMarker>::take_or_borrow(val),
16222 encoder, offset + 8, _depth
16223 )
16224 }
16225 AllTypesXunion::StringMember(ref val) => {
16226 fidl::encoding::encode_in_envelope::<fidl::encoding::UnboundedString, fidl::encoding::DefaultFuchsiaResourceDialect>(
16227 <fidl::encoding::UnboundedString as fidl::encoding::ValueTypeMarker>::borrow(val),
16228 encoder, offset + 8, _depth
16229 )
16230 }
16231 AllTypesXunion::StructMember(ref val) => {
16232 fidl::encoding::encode_in_envelope::<ThisIsAStruct, fidl::encoding::DefaultFuchsiaResourceDialect>(
16233 <ThisIsAStruct as fidl::encoding::ValueTypeMarker>::borrow(val),
16234 encoder, offset + 8, _depth
16235 )
16236 }
16237 AllTypesXunion::UnionMember(ref val) => {
16238 fidl::encoding::encode_in_envelope::<ThisIsAUnion, fidl::encoding::DefaultFuchsiaResourceDialect>(
16239 <ThisIsAUnion as fidl::encoding::ValueTypeMarker>::borrow(val),
16240 encoder, offset + 8, _depth
16241 )
16242 }
16243 AllTypesXunion::ArrayMember(ref val) => {
16244 fidl::encoding::encode_in_envelope::<fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16245 <fidl::encoding::Array<u32, 3> as fidl::encoding::ValueTypeMarker>::borrow(val),
16246 encoder, offset + 8, _depth
16247 )
16248 }
16249 AllTypesXunion::VectorMember(ref val) => {
16250 fidl::encoding::encode_in_envelope::<fidl::encoding::UnboundedVector<u32>, fidl::encoding::DefaultFuchsiaResourceDialect>(
16251 <fidl::encoding::UnboundedVector<u32> as fidl::encoding::ValueTypeMarker>::borrow(val),
16252 encoder, offset + 8, _depth
16253 )
16254 }
16255 AllTypesXunion::TableMember(ref val) => {
16256 fidl::encoding::encode_in_envelope::<ThisIsATable, fidl::encoding::DefaultFuchsiaResourceDialect>(
16257 <ThisIsATable as fidl::encoding::ValueTypeMarker>::borrow(val),
16258 encoder, offset + 8, _depth
16259 )
16260 }
16261 AllTypesXunion::XunionMember(ref val) => {
16262 fidl::encoding::encode_in_envelope::<ThisIsAXunion, fidl::encoding::DefaultFuchsiaResourceDialect>(
16263 <ThisIsAXunion as fidl::encoding::ValueTypeMarker>::borrow(val),
16264 encoder, offset + 8, _depth
16265 )
16266 }
16267 AllTypesXunion::__SourceBreaking { .. } => Err(fidl::Error::UnknownUnionTag),
16268 }
16269 }
16270 }
16271
16272 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
16273 for AllTypesXunion
16274 {
16275 #[inline(always)]
16276 fn new_empty() -> Self {
16277 Self::__SourceBreaking { unknown_ordinal: 0 }
16278 }
16279
16280 #[inline]
16281 unsafe fn decode(
16282 &mut self,
16283 decoder: &mut fidl::encoding::Decoder<
16284 '_,
16285 fidl::encoding::DefaultFuchsiaResourceDialect,
16286 >,
16287 offset: usize,
16288 mut depth: fidl::encoding::Depth,
16289 ) -> fidl::Result<()> {
16290 decoder.debug_check_bounds::<Self>(offset);
16291 #[allow(unused_variables)]
16292 let next_out_of_line = decoder.next_out_of_line();
16293 let handles_before = decoder.remaining_handles();
16294 let (ordinal, inlined, num_bytes, num_handles) =
16295 fidl::encoding::decode_union_inline_portion(decoder, offset)?;
16296
16297 let member_inline_size = match ordinal {
16298 1 => <bool as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16299 2 => <i8 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16300 3 => <i16 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16301 4 => <i32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16302 5 => <i64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16303 6 => <u8 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16304 7 => <u16 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16305 8 => <u32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16306 9 => <u64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16307 10 => <f32 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16308 11 => <f64 as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16309 12 => <DefaultEnum as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16310 13 => <DefaultBits as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16311 14 => <fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16312 15 => <fidl::encoding::UnboundedString as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16313 16 => <ThisIsAStruct as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16314 17 => <ThisIsAUnion as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16315 18 => <fidl::encoding::Array<u32, 3> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16316 19 => <fidl::encoding::UnboundedVector<u32> as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16317 20 => <ThisIsATable as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16318 21 => <ThisIsAXunion as fidl::encoding::TypeMarker>::inline_size(decoder.context),
16319 0 => return Err(fidl::Error::UnknownUnionTag),
16320 _ => num_bytes as usize,
16321 };
16322
16323 if inlined != (member_inline_size <= 4) {
16324 return Err(fidl::Error::InvalidInlineBitInEnvelope);
16325 }
16326 let _inner_offset;
16327 if inlined {
16328 decoder.check_inline_envelope_padding(offset + 8, member_inline_size)?;
16329 _inner_offset = offset + 8;
16330 } else {
16331 depth.increment()?;
16332 _inner_offset = decoder.out_of_line_offset(member_inline_size)?;
16333 }
16334 match ordinal {
16335 1 => {
16336 #[allow(irrefutable_let_patterns)]
16337 if let AllTypesXunion::BoolMember(_) = self {
16338 } else {
16340 *self = AllTypesXunion::BoolMember(fidl::new_empty!(
16342 bool,
16343 fidl::encoding::DefaultFuchsiaResourceDialect
16344 ));
16345 }
16346 #[allow(irrefutable_let_patterns)]
16347 if let AllTypesXunion::BoolMember(ref mut val) = self {
16348 fidl::decode!(
16349 bool,
16350 fidl::encoding::DefaultFuchsiaResourceDialect,
16351 val,
16352 decoder,
16353 _inner_offset,
16354 depth
16355 )?;
16356 } else {
16357 unreachable!()
16358 }
16359 }
16360 2 => {
16361 #[allow(irrefutable_let_patterns)]
16362 if let AllTypesXunion::Int8Member(_) = self {
16363 } else {
16365 *self = AllTypesXunion::Int8Member(fidl::new_empty!(
16367 i8,
16368 fidl::encoding::DefaultFuchsiaResourceDialect
16369 ));
16370 }
16371 #[allow(irrefutable_let_patterns)]
16372 if let AllTypesXunion::Int8Member(ref mut val) = self {
16373 fidl::decode!(
16374 i8,
16375 fidl::encoding::DefaultFuchsiaResourceDialect,
16376 val,
16377 decoder,
16378 _inner_offset,
16379 depth
16380 )?;
16381 } else {
16382 unreachable!()
16383 }
16384 }
16385 3 => {
16386 #[allow(irrefutable_let_patterns)]
16387 if let AllTypesXunion::Int16Member(_) = self {
16388 } else {
16390 *self = AllTypesXunion::Int16Member(fidl::new_empty!(
16392 i16,
16393 fidl::encoding::DefaultFuchsiaResourceDialect
16394 ));
16395 }
16396 #[allow(irrefutable_let_patterns)]
16397 if let AllTypesXunion::Int16Member(ref mut val) = self {
16398 fidl::decode!(
16399 i16,
16400 fidl::encoding::DefaultFuchsiaResourceDialect,
16401 val,
16402 decoder,
16403 _inner_offset,
16404 depth
16405 )?;
16406 } else {
16407 unreachable!()
16408 }
16409 }
16410 4 => {
16411 #[allow(irrefutable_let_patterns)]
16412 if let AllTypesXunion::Int32Member(_) = self {
16413 } else {
16415 *self = AllTypesXunion::Int32Member(fidl::new_empty!(
16417 i32,
16418 fidl::encoding::DefaultFuchsiaResourceDialect
16419 ));
16420 }
16421 #[allow(irrefutable_let_patterns)]
16422 if let AllTypesXunion::Int32Member(ref mut val) = self {
16423 fidl::decode!(
16424 i32,
16425 fidl::encoding::DefaultFuchsiaResourceDialect,
16426 val,
16427 decoder,
16428 _inner_offset,
16429 depth
16430 )?;
16431 } else {
16432 unreachable!()
16433 }
16434 }
16435 5 => {
16436 #[allow(irrefutable_let_patterns)]
16437 if let AllTypesXunion::Int64Member(_) = self {
16438 } else {
16440 *self = AllTypesXunion::Int64Member(fidl::new_empty!(
16442 i64,
16443 fidl::encoding::DefaultFuchsiaResourceDialect
16444 ));
16445 }
16446 #[allow(irrefutable_let_patterns)]
16447 if let AllTypesXunion::Int64Member(ref mut val) = self {
16448 fidl::decode!(
16449 i64,
16450 fidl::encoding::DefaultFuchsiaResourceDialect,
16451 val,
16452 decoder,
16453 _inner_offset,
16454 depth
16455 )?;
16456 } else {
16457 unreachable!()
16458 }
16459 }
16460 6 => {
16461 #[allow(irrefutable_let_patterns)]
16462 if let AllTypesXunion::Uint8Member(_) = self {
16463 } else {
16465 *self = AllTypesXunion::Uint8Member(fidl::new_empty!(
16467 u8,
16468 fidl::encoding::DefaultFuchsiaResourceDialect
16469 ));
16470 }
16471 #[allow(irrefutable_let_patterns)]
16472 if let AllTypesXunion::Uint8Member(ref mut val) = self {
16473 fidl::decode!(
16474 u8,
16475 fidl::encoding::DefaultFuchsiaResourceDialect,
16476 val,
16477 decoder,
16478 _inner_offset,
16479 depth
16480 )?;
16481 } else {
16482 unreachable!()
16483 }
16484 }
16485 7 => {
16486 #[allow(irrefutable_let_patterns)]
16487 if let AllTypesXunion::Uint16Member(_) = self {
16488 } else {
16490 *self = AllTypesXunion::Uint16Member(fidl::new_empty!(
16492 u16,
16493 fidl::encoding::DefaultFuchsiaResourceDialect
16494 ));
16495 }
16496 #[allow(irrefutable_let_patterns)]
16497 if let AllTypesXunion::Uint16Member(ref mut val) = self {
16498 fidl::decode!(
16499 u16,
16500 fidl::encoding::DefaultFuchsiaResourceDialect,
16501 val,
16502 decoder,
16503 _inner_offset,
16504 depth
16505 )?;
16506 } else {
16507 unreachable!()
16508 }
16509 }
16510 8 => {
16511 #[allow(irrefutable_let_patterns)]
16512 if let AllTypesXunion::Uint32Member(_) = self {
16513 } else {
16515 *self = AllTypesXunion::Uint32Member(fidl::new_empty!(
16517 u32,
16518 fidl::encoding::DefaultFuchsiaResourceDialect
16519 ));
16520 }
16521 #[allow(irrefutable_let_patterns)]
16522 if let AllTypesXunion::Uint32Member(ref mut val) = self {
16523 fidl::decode!(
16524 u32,
16525 fidl::encoding::DefaultFuchsiaResourceDialect,
16526 val,
16527 decoder,
16528 _inner_offset,
16529 depth
16530 )?;
16531 } else {
16532 unreachable!()
16533 }
16534 }
16535 9 => {
16536 #[allow(irrefutable_let_patterns)]
16537 if let AllTypesXunion::Uint64Member(_) = self {
16538 } else {
16540 *self = AllTypesXunion::Uint64Member(fidl::new_empty!(
16542 u64,
16543 fidl::encoding::DefaultFuchsiaResourceDialect
16544 ));
16545 }
16546 #[allow(irrefutable_let_patterns)]
16547 if let AllTypesXunion::Uint64Member(ref mut val) = self {
16548 fidl::decode!(
16549 u64,
16550 fidl::encoding::DefaultFuchsiaResourceDialect,
16551 val,
16552 decoder,
16553 _inner_offset,
16554 depth
16555 )?;
16556 } else {
16557 unreachable!()
16558 }
16559 }
16560 10 => {
16561 #[allow(irrefutable_let_patterns)]
16562 if let AllTypesXunion::Float32Member(_) = self {
16563 } else {
16565 *self = AllTypesXunion::Float32Member(fidl::new_empty!(
16567 f32,
16568 fidl::encoding::DefaultFuchsiaResourceDialect
16569 ));
16570 }
16571 #[allow(irrefutable_let_patterns)]
16572 if let AllTypesXunion::Float32Member(ref mut val) = self {
16573 fidl::decode!(
16574 f32,
16575 fidl::encoding::DefaultFuchsiaResourceDialect,
16576 val,
16577 decoder,
16578 _inner_offset,
16579 depth
16580 )?;
16581 } else {
16582 unreachable!()
16583 }
16584 }
16585 11 => {
16586 #[allow(irrefutable_let_patterns)]
16587 if let AllTypesXunion::Float64Member(_) = self {
16588 } else {
16590 *self = AllTypesXunion::Float64Member(fidl::new_empty!(
16592 f64,
16593 fidl::encoding::DefaultFuchsiaResourceDialect
16594 ));
16595 }
16596 #[allow(irrefutable_let_patterns)]
16597 if let AllTypesXunion::Float64Member(ref mut val) = self {
16598 fidl::decode!(
16599 f64,
16600 fidl::encoding::DefaultFuchsiaResourceDialect,
16601 val,
16602 decoder,
16603 _inner_offset,
16604 depth
16605 )?;
16606 } else {
16607 unreachable!()
16608 }
16609 }
16610 12 => {
16611 #[allow(irrefutable_let_patterns)]
16612 if let AllTypesXunion::EnumMember(_) = self {
16613 } else {
16615 *self = AllTypesXunion::EnumMember(fidl::new_empty!(
16617 DefaultEnum,
16618 fidl::encoding::DefaultFuchsiaResourceDialect
16619 ));
16620 }
16621 #[allow(irrefutable_let_patterns)]
16622 if let AllTypesXunion::EnumMember(ref mut val) = self {
16623 fidl::decode!(
16624 DefaultEnum,
16625 fidl::encoding::DefaultFuchsiaResourceDialect,
16626 val,
16627 decoder,
16628 _inner_offset,
16629 depth
16630 )?;
16631 } else {
16632 unreachable!()
16633 }
16634 }
16635 13 => {
16636 #[allow(irrefutable_let_patterns)]
16637 if let AllTypesXunion::BitsMember(_) = self {
16638 } else {
16640 *self = AllTypesXunion::BitsMember(fidl::new_empty!(
16642 DefaultBits,
16643 fidl::encoding::DefaultFuchsiaResourceDialect
16644 ));
16645 }
16646 #[allow(irrefutable_let_patterns)]
16647 if let AllTypesXunion::BitsMember(ref mut val) = self {
16648 fidl::decode!(
16649 DefaultBits,
16650 fidl::encoding::DefaultFuchsiaResourceDialect,
16651 val,
16652 decoder,
16653 _inner_offset,
16654 depth
16655 )?;
16656 } else {
16657 unreachable!()
16658 }
16659 }
16660 14 => {
16661 #[allow(irrefutable_let_patterns)]
16662 if let AllTypesXunion::HandleMember(_) = self {
16663 } else {
16665 *self = AllTypesXunion::HandleMember(
16667 fidl::new_empty!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect),
16668 );
16669 }
16670 #[allow(irrefutable_let_patterns)]
16671 if let AllTypesXunion::HandleMember(ref mut val) = self {
16672 fidl::decode!(fidl::encoding::HandleType<fidl::NullableHandle, { fidl::ObjectType::NONE.into_raw() }, 2147483648>, fidl::encoding::DefaultFuchsiaResourceDialect, val, decoder, _inner_offset, depth)?;
16673 } else {
16674 unreachable!()
16675 }
16676 }
16677 15 => {
16678 #[allow(irrefutable_let_patterns)]
16679 if let AllTypesXunion::StringMember(_) = self {
16680 } else {
16682 *self = AllTypesXunion::StringMember(fidl::new_empty!(
16684 fidl::encoding::UnboundedString,
16685 fidl::encoding::DefaultFuchsiaResourceDialect
16686 ));
16687 }
16688 #[allow(irrefutable_let_patterns)]
16689 if let AllTypesXunion::StringMember(ref mut val) = self {
16690 fidl::decode!(
16691 fidl::encoding::UnboundedString,
16692 fidl::encoding::DefaultFuchsiaResourceDialect,
16693 val,
16694 decoder,
16695 _inner_offset,
16696 depth
16697 )?;
16698 } else {
16699 unreachable!()
16700 }
16701 }
16702 16 => {
16703 #[allow(irrefutable_let_patterns)]
16704 if let AllTypesXunion::StructMember(_) = self {
16705 } else {
16707 *self = AllTypesXunion::StructMember(fidl::new_empty!(
16709 ThisIsAStruct,
16710 fidl::encoding::DefaultFuchsiaResourceDialect
16711 ));
16712 }
16713 #[allow(irrefutable_let_patterns)]
16714 if let AllTypesXunion::StructMember(ref mut val) = self {
16715 fidl::decode!(
16716 ThisIsAStruct,
16717 fidl::encoding::DefaultFuchsiaResourceDialect,
16718 val,
16719 decoder,
16720 _inner_offset,
16721 depth
16722 )?;
16723 } else {
16724 unreachable!()
16725 }
16726 }
16727 17 => {
16728 #[allow(irrefutable_let_patterns)]
16729 if let AllTypesXunion::UnionMember(_) = self {
16730 } else {
16732 *self = AllTypesXunion::UnionMember(fidl::new_empty!(
16734 ThisIsAUnion,
16735 fidl::encoding::DefaultFuchsiaResourceDialect
16736 ));
16737 }
16738 #[allow(irrefutable_let_patterns)]
16739 if let AllTypesXunion::UnionMember(ref mut val) = self {
16740 fidl::decode!(
16741 ThisIsAUnion,
16742 fidl::encoding::DefaultFuchsiaResourceDialect,
16743 val,
16744 decoder,
16745 _inner_offset,
16746 depth
16747 )?;
16748 } else {
16749 unreachable!()
16750 }
16751 }
16752 18 => {
16753 #[allow(irrefutable_let_patterns)]
16754 if let AllTypesXunion::ArrayMember(_) = self {
16755 } else {
16757 *self = AllTypesXunion::ArrayMember(
16759 fidl::new_empty!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect),
16760 );
16761 }
16762 #[allow(irrefutable_let_patterns)]
16763 if let AllTypesXunion::ArrayMember(ref mut val) = self {
16764 fidl::decode!(fidl::encoding::Array<u32, 3>, fidl::encoding::DefaultFuchsiaResourceDialect, val, decoder, _inner_offset, depth)?;
16765 } else {
16766 unreachable!()
16767 }
16768 }
16769 19 => {
16770 #[allow(irrefutable_let_patterns)]
16771 if let AllTypesXunion::VectorMember(_) = self {
16772 } else {
16774 *self = AllTypesXunion::VectorMember(fidl::new_empty!(
16776 fidl::encoding::UnboundedVector<u32>,
16777 fidl::encoding::DefaultFuchsiaResourceDialect
16778 ));
16779 }
16780 #[allow(irrefutable_let_patterns)]
16781 if let AllTypesXunion::VectorMember(ref mut val) = self {
16782 fidl::decode!(
16783 fidl::encoding::UnboundedVector<u32>,
16784 fidl::encoding::DefaultFuchsiaResourceDialect,
16785 val,
16786 decoder,
16787 _inner_offset,
16788 depth
16789 )?;
16790 } else {
16791 unreachable!()
16792 }
16793 }
16794 20 => {
16795 #[allow(irrefutable_let_patterns)]
16796 if let AllTypesXunion::TableMember(_) = self {
16797 } else {
16799 *self = AllTypesXunion::TableMember(fidl::new_empty!(
16801 ThisIsATable,
16802 fidl::encoding::DefaultFuchsiaResourceDialect
16803 ));
16804 }
16805 #[allow(irrefutable_let_patterns)]
16806 if let AllTypesXunion::TableMember(ref mut val) = self {
16807 fidl::decode!(
16808 ThisIsATable,
16809 fidl::encoding::DefaultFuchsiaResourceDialect,
16810 val,
16811 decoder,
16812 _inner_offset,
16813 depth
16814 )?;
16815 } else {
16816 unreachable!()
16817 }
16818 }
16819 21 => {
16820 #[allow(irrefutable_let_patterns)]
16821 if let AllTypesXunion::XunionMember(_) = self {
16822 } else {
16824 *self = AllTypesXunion::XunionMember(fidl::new_empty!(
16826 ThisIsAXunion,
16827 fidl::encoding::DefaultFuchsiaResourceDialect
16828 ));
16829 }
16830 #[allow(irrefutable_let_patterns)]
16831 if let AllTypesXunion::XunionMember(ref mut val) = self {
16832 fidl::decode!(
16833 ThisIsAXunion,
16834 fidl::encoding::DefaultFuchsiaResourceDialect,
16835 val,
16836 decoder,
16837 _inner_offset,
16838 depth
16839 )?;
16840 } else {
16841 unreachable!()
16842 }
16843 }
16844 #[allow(deprecated)]
16845 ordinal => {
16846 for _ in 0..num_handles {
16847 decoder.drop_next_handle()?;
16848 }
16849 *self = AllTypesXunion::__SourceBreaking { unknown_ordinal: ordinal };
16850 }
16851 }
16852 if !inlined && decoder.next_out_of_line() != next_out_of_line + (num_bytes as usize) {
16853 return Err(fidl::Error::InvalidNumBytesInEnvelope);
16854 }
16855 if handles_before != decoder.remaining_handles() + (num_handles as usize) {
16856 return Err(fidl::Error::InvalidNumHandlesInEnvelope);
16857 }
16858 Ok(())
16859 }
16860 }
16861}