fidl_test_pkgdir__common/
fidl_test_pkgdir__common.rs1#![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
11#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
12#[repr(C)]
13pub struct PkgDirOpenPackageDirectoryRequest {
14 pub meta_far: [u8; 32],
15}
16
17impl fidl::Persistable for PkgDirOpenPackageDirectoryRequest {}
18
19pub mod pkg_dir_ordinals {
20 pub const OPEN_PACKAGE_DIRECTORY: u64 = 0x4589b1c39651e01;
21}
22
23mod internal {
24 use super::*;
25
26 impl fidl::encoding::ValueTypeMarker for PkgDirOpenPackageDirectoryRequest {
27 type Borrowed<'a> = &'a Self;
28 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
29 value
30 }
31 }
32
33 unsafe impl fidl::encoding::TypeMarker for PkgDirOpenPackageDirectoryRequest {
34 type Owned = Self;
35
36 #[inline(always)]
37 fn inline_align(_context: fidl::encoding::Context) -> usize {
38 1
39 }
40
41 #[inline(always)]
42 fn inline_size(_context: fidl::encoding::Context) -> usize {
43 32
44 }
45 #[inline(always)]
46 fn encode_is_copy() -> bool {
47 true
48 }
49
50 #[inline(always)]
51 fn decode_is_copy() -> bool {
52 true
53 }
54 }
55
56 unsafe impl<D: fidl::encoding::ResourceDialect>
57 fidl::encoding::Encode<PkgDirOpenPackageDirectoryRequest, D>
58 for &PkgDirOpenPackageDirectoryRequest
59 {
60 #[inline]
61 unsafe fn encode(
62 self,
63 encoder: &mut fidl::encoding::Encoder<'_, D>,
64 offset: usize,
65 _depth: fidl::encoding::Depth,
66 ) -> fidl::Result<()> {
67 encoder.debug_check_bounds::<PkgDirOpenPackageDirectoryRequest>(offset);
68 unsafe {
69 let buf_ptr = encoder.buf.as_mut_ptr().add(offset);
71 (buf_ptr as *mut PkgDirOpenPackageDirectoryRequest)
72 .write_unaligned((self as *const PkgDirOpenPackageDirectoryRequest).read());
73 }
76 Ok(())
77 }
78 }
79 unsafe impl<
80 D: fidl::encoding::ResourceDialect,
81 T0: fidl::encoding::Encode<fidl::encoding::Array<u8, 32>, D>,
82 > fidl::encoding::Encode<PkgDirOpenPackageDirectoryRequest, D> for (T0,)
83 {
84 #[inline]
85 unsafe fn encode(
86 self,
87 encoder: &mut fidl::encoding::Encoder<'_, D>,
88 offset: usize,
89 depth: fidl::encoding::Depth,
90 ) -> fidl::Result<()> {
91 encoder.debug_check_bounds::<PkgDirOpenPackageDirectoryRequest>(offset);
92 self.0.encode(encoder, offset + 0, depth)?;
96 Ok(())
97 }
98 }
99
100 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
101 for PkgDirOpenPackageDirectoryRequest
102 {
103 #[inline(always)]
104 fn new_empty() -> Self {
105 Self { meta_far: fidl::new_empty!(fidl::encoding::Array<u8, 32>, D) }
106 }
107
108 #[inline]
109 unsafe fn decode(
110 &mut self,
111 decoder: &mut fidl::encoding::Decoder<'_, D>,
112 offset: usize,
113 _depth: fidl::encoding::Depth,
114 ) -> fidl::Result<()> {
115 decoder.debug_check_bounds::<Self>(offset);
116 let buf_ptr = unsafe { decoder.buf.as_ptr().add(offset) };
117 unsafe {
120 std::ptr::copy_nonoverlapping(buf_ptr, self as *mut Self as *mut u8, 32);
121 }
122 Ok(())
123 }
124 }
125}