fidl_fuchsia_hardware_google_nanohub__common/
fidl_fuchsia_hardware_google_nanohub__common.rs

1// WARNING: This file is machine generated by fidlgen.
2
3#![warn(clippy::all)]
4#![allow(unused_parens, unused_mut, unused_imports, nonstandard_style)]
5
6use bitflags::bitflags;
7use fidl::encoding::{MessageBufFor, ProxyChannelBox, ResourceDialect};
8use futures::future::{self, MaybeDone, TryFutureExt};
9use zx_status;
10
11pub type FirmwareName = String;
12
13#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
14pub struct DeviceGetFirmwareNameResponse {
15    pub firmware_name: String,
16}
17
18impl fidl::Persistable for DeviceGetFirmwareNameResponse {}
19
20pub mod device_ordinals {
21    pub const DOWNLOAD_FIRMWARE: u64 = 0x7bba8137e24661e5;
22    pub const GET_FIRMWARE_NAME: u64 = 0x1649434b5e5bcb8d;
23}
24
25mod internal {
26    use super::*;
27
28    impl fidl::encoding::ValueTypeMarker for DeviceGetFirmwareNameResponse {
29        type Borrowed<'a> = &'a Self;
30        fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
31            value
32        }
33    }
34
35    unsafe impl fidl::encoding::TypeMarker for DeviceGetFirmwareNameResponse {
36        type Owned = Self;
37
38        #[inline(always)]
39        fn inline_align(_context: fidl::encoding::Context) -> usize {
40            8
41        }
42
43        #[inline(always)]
44        fn inline_size(_context: fidl::encoding::Context) -> usize {
45            16
46        }
47    }
48
49    unsafe impl<D: fidl::encoding::ResourceDialect>
50        fidl::encoding::Encode<DeviceGetFirmwareNameResponse, D>
51        for &DeviceGetFirmwareNameResponse
52    {
53        #[inline]
54        unsafe fn encode(
55            self,
56            encoder: &mut fidl::encoding::Encoder<'_, D>,
57            offset: usize,
58            _depth: fidl::encoding::Depth,
59        ) -> fidl::Result<()> {
60            encoder.debug_check_bounds::<DeviceGetFirmwareNameResponse>(offset);
61            // Delegate to tuple encoding.
62            fidl::encoding::Encode::<DeviceGetFirmwareNameResponse, D>::encode(
63                (<fidl::encoding::BoundedString<64> as fidl::encoding::ValueTypeMarker>::borrow(
64                    &self.firmware_name,
65                ),),
66                encoder,
67                offset,
68                _depth,
69            )
70        }
71    }
72    unsafe impl<
73            D: fidl::encoding::ResourceDialect,
74            T0: fidl::encoding::Encode<fidl::encoding::BoundedString<64>, D>,
75        > fidl::encoding::Encode<DeviceGetFirmwareNameResponse, D> for (T0,)
76    {
77        #[inline]
78        unsafe fn encode(
79            self,
80            encoder: &mut fidl::encoding::Encoder<'_, D>,
81            offset: usize,
82            depth: fidl::encoding::Depth,
83        ) -> fidl::Result<()> {
84            encoder.debug_check_bounds::<DeviceGetFirmwareNameResponse>(offset);
85            // Zero out padding regions. There's no need to apply masks
86            // because the unmasked parts will be overwritten by fields.
87            // Write the fields.
88            self.0.encode(encoder, offset + 0, depth)?;
89            Ok(())
90        }
91    }
92
93    impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
94        for DeviceGetFirmwareNameResponse
95    {
96        #[inline(always)]
97        fn new_empty() -> Self {
98            Self { firmware_name: fidl::new_empty!(fidl::encoding::BoundedString<64>, D) }
99        }
100
101        #[inline]
102        unsafe fn decode(
103            &mut self,
104            decoder: &mut fidl::encoding::Decoder<'_, D>,
105            offset: usize,
106            _depth: fidl::encoding::Depth,
107        ) -> fidl::Result<()> {
108            decoder.debug_check_bounds::<Self>(offset);
109            // Verify that padding bytes are zero.
110            fidl::decode!(
111                fidl::encoding::BoundedString<64>,
112                D,
113                &mut self.firmware_name,
114                decoder,
115                offset + 0,
116                _depth
117            )?;
118            Ok(())
119        }
120    }
121}