| // WARNING: This file is machine generated by fidlgen. | 
 |  | 
 | #![allow( | 
 | 	deprecated, // FIDL Impl struct pattern is referenced internally | 
 | 	unused_parens, // one-element-tuple-case is not a tuple | 
 | 	unused_mut, // not all args require mutation, but many do | 
 | 	nonstandard_style, // auto-caps does its best, but is not always successful | 
 | )] | 
 | #![recursion_limit = "512"] | 
 |  | 
 | #[cfg(target_os = "fuchsia")] | 
 | #[allow(unused_imports)] | 
 | use fuchsia_zircon as zx; | 
 |  | 
 | #[allow(unused_imports)] | 
 | use { | 
 |     bitflags::bitflags, | 
 |     fidl::{ | 
 |         client::{decode_transaction_body_fut, QueryResponseFut}, | 
 |         fidl_empty_struct, fidl_flexible_bits, fidl_flexible_enum, fidl_strict_bits, | 
 |         fidl_strict_enum, fidl_struct, fidl_struct_copy, fidl_table, fidl_xunion, | 
 |         wrap_handle_metadata, | 
 |     }, | 
 |     fuchsia_zircon_status as zx_status, | 
 |     futures::future::{self, MaybeDone, TryFutureExt}, | 
 | }; | 
 |  | 
 | #[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)] | 
 | #[repr(C)] | 
 | pub struct Int8Int32 { | 
 |     pub a: i8, | 
 |     pub b: i32, | 
 | } | 
 |  | 
 | fidl_struct_copy! { | 
 |   name: Int8Int32, | 
 |   members: [ | 
 |     a { | 
 |       ty: i8, | 
 |       offset_v1: 0, | 
 |     }, | 
 |     b { | 
 |       ty: i32, | 
 |       offset_v1: 4, | 
 |     }, | 
 |   ], | 
 |   padding: [ | 
 |   { | 
 |       ty: u64, | 
 |       offset: 0, | 
 |       mask: 0x00000000ffffff00u64, | 
 |   },], | 
 |   size_v1: 8, | 
 |   align_v1: 4, | 
 | } | 
 |  | 
 | #[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)] | 
 | #[repr(C)] | 
 | pub struct Int16Int8 { | 
 |     pub a: i16, | 
 |     pub b: i8, | 
 | } | 
 |  | 
 | fidl_struct_copy! { | 
 |   name: Int16Int8, | 
 |   members: [ | 
 |     a { | 
 |       ty: i16, | 
 |       offset_v1: 0, | 
 |     }, | 
 |     b { | 
 |       ty: i8, | 
 |       offset_v1: 2, | 
 |     }, | 
 |   ], | 
 |   padding: [ | 
 |   { | 
 |       ty: u32, | 
 |       offset: 0, | 
 |       mask: 0xff000000u32, | 
 |   },], | 
 |   size_v1: 4, | 
 |   align_v1: 2, | 
 | } | 
 |  | 
 | #[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)] | 
 | #[repr(C)] | 
 | pub struct ArrayInt16Int8 { | 
 |     pub arr: [Int16Int8; 3], | 
 | } | 
 |  | 
 | fidl_struct_copy! { | 
 |   name: ArrayInt16Int8, | 
 |   members: [ | 
 |     arr { | 
 |       ty: [Int16Int8; 3], | 
 |       offset_v1: 0, | 
 |     }, | 
 |   ], | 
 |   padding: [ | 
 |   { | 
 |       ty: u64, | 
 |       offset: 0, | 
 |       mask: 0xff000000ff000000u64, | 
 |   }, | 
 |   { | 
 |       ty: u32, | 
 |       offset: 8, | 
 |       mask: 0xff000000u32, | 
 |   },], | 
 |   size_v1: 12, | 
 |   align_v1: 2, | 
 | } | 
 |  | 
 | #[derive(Debug, Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)] | 
 | #[repr(C)] | 
 | pub struct StructPaddingTestStruct { | 
 |     pub trailing: Int16Int8, | 
 |     pub inner: Int8Int32, | 
 |     pub array: ArrayInt16Int8, | 
 | } | 
 |  | 
 | fidl_struct_copy! { | 
 |   name: StructPaddingTestStruct, | 
 |   members: [ | 
 |     trailing { | 
 |       ty: Int16Int8, | 
 |       offset_v1: 0, | 
 |     }, | 
 |     inner { | 
 |       ty: Int8Int32, | 
 |       offset_v1: 4, | 
 |     }, | 
 |     array { | 
 |       ty: ArrayInt16Int8, | 
 |       offset_v1: 12, | 
 |     }, | 
 |   ], | 
 |   padding: [ | 
 |   { | 
 |       ty: u64, | 
 |       offset: 0, | 
 |       mask: 0xffffff00ff000000u64, | 
 |   }, | 
 |   { | 
 |       ty: u64, | 
 |       offset: 8, | 
 |       mask: 0xff00000000000000u64, | 
 |   }, | 
 |   { | 
 |       ty: u64, | 
 |       offset: 16, | 
 |       mask: 0xff000000ff000000u64, | 
 |   },], | 
 |   size_v1: 24, | 
 |   align_v1: 4, | 
 | } | 
 |  | 
 | #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)] | 
 |  | 
 | pub struct NonInlineStructTestStruct { | 
 |     pub element: Option<Box<Int16Int8>>, | 
 |     pub h: fidl::Handle, | 
 | } | 
 |  | 
 | fidl_struct! { | 
 |   name: NonInlineStructTestStruct, | 
 |   members: [ | 
 |     element { | 
 |       ty: Option<Box<Int16Int8>>, | 
 |       offset_v1: 0, | 
 |     }, | 
 |     h { | 
 |       ty: fidl::Handle, | 
 |       offset_v1: 8, | 
 |       handle_metadata: { | 
 |         handle_subtype: fidl::ObjectType::NONE, | 
 |         handle_rights: fidl::Rights::from_bits_const(2147483648).unwrap(), | 
 |       }, | 
 |     }, | 
 |   ], | 
 |   padding: [ | 
 |   { | 
 |       ty: u64, | 
 |       offset: 8, | 
 |       mask: 0xffffffff00000000u64, | 
 |   },], | 
 |   size_v1: 16, | 
 |   align_v1: 8, | 
 | } | 
 |  | 
 | #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)] | 
 |  | 
 | pub struct TopLevelStruct { | 
 |     pub a: StructPaddingTestStruct, | 
 |     pub b: NonInlineStructTestStruct, | 
 | } | 
 |  | 
 | fidl_struct! { | 
 |   name: TopLevelStruct, | 
 |   members: [ | 
 |     a { | 
 |       ty: StructPaddingTestStruct, | 
 |       offset_v1: 0, | 
 |     }, | 
 |     b { | 
 |       ty: NonInlineStructTestStruct, | 
 |       offset_v1: 24, | 
 |     }, | 
 |   ], | 
 |   padding: [], | 
 |   size_v1: 40, | 
 |   align_v1: 8, | 
 | } |