fidl_fuchsia_ui_scenic/
fidl_fuchsia_ui_scenic.rs1#![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_fuchsia_ui_scenic_common::*;
11use futures::future::{self, MaybeDone, TryFutureExt};
12use zx_status;
13
14#[derive(Debug, PartialEq)]
18pub struct ScreenshotData {
19 pub info: fidl_fuchsia_images::ImageInfo,
20 pub data: fidl_fuchsia_mem::Buffer,
21}
22
23impl fidl::Standalone<fidl::encoding::DefaultFuchsiaResourceDialect> for ScreenshotData {}
24
25mod internal {
26 use super::*;
27
28 impl fidl::encoding::ResourceTypeMarker for ScreenshotData {
29 type Borrowed<'a> = &'a mut Self;
30 fn take_or_borrow<'a>(
31 value: &'a mut <Self as fidl::encoding::TypeMarker>::Owned,
32 ) -> Self::Borrowed<'a> {
33 value
34 }
35 }
36
37 unsafe impl fidl::encoding::TypeMarker for ScreenshotData {
38 type Owned = Self;
39
40 #[inline(always)]
41 fn inline_align(_context: fidl::encoding::Context) -> usize {
42 8
43 }
44
45 #[inline(always)]
46 fn inline_size(_context: fidl::encoding::Context) -> usize {
47 48
48 }
49 }
50
51 unsafe impl
52 fidl::encoding::Encode<ScreenshotData, fidl::encoding::DefaultFuchsiaResourceDialect>
53 for &mut ScreenshotData
54 {
55 #[inline]
56 unsafe fn encode(
57 self,
58 encoder: &mut fidl::encoding::Encoder<
59 '_,
60 fidl::encoding::DefaultFuchsiaResourceDialect,
61 >,
62 offset: usize,
63 _depth: fidl::encoding::Depth,
64 ) -> fidl::Result<()> {
65 encoder.debug_check_bounds::<ScreenshotData>(offset);
66 fidl::encoding::Encode::<ScreenshotData, fidl::encoding::DefaultFuchsiaResourceDialect>::encode(
68 (
69 <fidl_fuchsia_images::ImageInfo as fidl::encoding::ValueTypeMarker>::borrow(&self.info),
70 <fidl_fuchsia_mem::Buffer as fidl::encoding::ResourceTypeMarker>::take_or_borrow(&mut self.data),
71 ),
72 encoder, offset, _depth
73 )
74 }
75 }
76 unsafe impl<
77 T0: fidl::encoding::Encode<
78 fidl_fuchsia_images::ImageInfo,
79 fidl::encoding::DefaultFuchsiaResourceDialect,
80 >,
81 T1: fidl::encoding::Encode<
82 fidl_fuchsia_mem::Buffer,
83 fidl::encoding::DefaultFuchsiaResourceDialect,
84 >,
85 > fidl::encoding::Encode<ScreenshotData, fidl::encoding::DefaultFuchsiaResourceDialect>
86 for (T0, T1)
87 {
88 #[inline]
89 unsafe fn encode(
90 self,
91 encoder: &mut fidl::encoding::Encoder<
92 '_,
93 fidl::encoding::DefaultFuchsiaResourceDialect,
94 >,
95 offset: usize,
96 depth: fidl::encoding::Depth,
97 ) -> fidl::Result<()> {
98 encoder.debug_check_bounds::<ScreenshotData>(offset);
99 self.0.encode(encoder, offset + 0, depth)?;
103 self.1.encode(encoder, offset + 32, depth)?;
104 Ok(())
105 }
106 }
107
108 impl fidl::encoding::Decode<Self, fidl::encoding::DefaultFuchsiaResourceDialect>
109 for ScreenshotData
110 {
111 #[inline(always)]
112 fn new_empty() -> Self {
113 Self {
114 info: fidl::new_empty!(
115 fidl_fuchsia_images::ImageInfo,
116 fidl::encoding::DefaultFuchsiaResourceDialect
117 ),
118 data: fidl::new_empty!(
119 fidl_fuchsia_mem::Buffer,
120 fidl::encoding::DefaultFuchsiaResourceDialect
121 ),
122 }
123 }
124
125 #[inline]
126 unsafe fn decode(
127 &mut self,
128 decoder: &mut fidl::encoding::Decoder<
129 '_,
130 fidl::encoding::DefaultFuchsiaResourceDialect,
131 >,
132 offset: usize,
133 _depth: fidl::encoding::Depth,
134 ) -> fidl::Result<()> {
135 decoder.debug_check_bounds::<Self>(offset);
136 fidl::decode!(
138 fidl_fuchsia_images::ImageInfo,
139 fidl::encoding::DefaultFuchsiaResourceDialect,
140 &mut self.info,
141 decoder,
142 offset + 0,
143 _depth
144 )?;
145 fidl::decode!(
146 fidl_fuchsia_mem::Buffer,
147 fidl::encoding::DefaultFuchsiaResourceDialect,
148 &mut self.data,
149 decoder,
150 offset + 32,
151 _depth
152 )?;
153 Ok(())
154 }
155 }
156}