1#![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 const MAX_RESOLVE_NAME_SIZE: u32 = 2048;
13
14#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
15pub struct LauncherAddArgsRequest {
16 pub args: Vec<Vec<u8>>,
17}
18
19impl fidl::Persistable for LauncherAddArgsRequest {}
20
21#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
22pub struct LauncherAddEnvironsRequest {
23 pub environ: Vec<Vec<u8>>,
24}
25
26impl fidl::Persistable for LauncherAddEnvironsRequest {}
27
28#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
29#[repr(C)]
30pub struct LauncherSetOptionsRequest {
31 pub options: u32,
36}
37
38impl fidl::Persistable for LauncherSetOptionsRequest {}
39
40#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
41pub struct ResolverResolveRequest {
42 pub name: String,
43}
44
45impl fidl::Persistable for ResolverResolveRequest {}
46
47pub mod launcher_ordinals {
48 pub const LAUNCH: u64 = 0x11335a9928afbfa4;
49 pub const CREATE_WITHOUT_STARTING: u64 = 0x755f8263fe51cb61;
50 pub const ADD_ARGS: u64 = 0x3be445d3e4fd6512;
51 pub const ADD_ENVIRONS: u64 = 0x73a3c97fa7fe1779;
52 pub const ADD_NAMES: u64 = 0x2579ee2c7be28662;
53 pub const ADD_HANDLES: u64 = 0x51025267a537a615;
54 pub const SET_OPTIONS: u64 = 0x5b92576147ebfd87;
55}
56
57pub mod resolver_ordinals {
58 pub const RESOLVE: u64 = 0x3c15951efde89c90;
59}
60
61mod internal {
62 use super::*;
63
64 impl fidl::encoding::ValueTypeMarker for LauncherAddArgsRequest {
65 type Borrowed<'a> = &'a Self;
66 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
67 value
68 }
69 }
70
71 unsafe impl fidl::encoding::TypeMarker for LauncherAddArgsRequest {
72 type Owned = Self;
73
74 #[inline(always)]
75 fn inline_align(_context: fidl::encoding::Context) -> usize {
76 8
77 }
78
79 #[inline(always)]
80 fn inline_size(_context: fidl::encoding::Context) -> usize {
81 16
82 }
83 }
84
85 unsafe impl<D: fidl::encoding::ResourceDialect>
86 fidl::encoding::Encode<LauncherAddArgsRequest, D> for &LauncherAddArgsRequest
87 {
88 #[inline]
89 unsafe fn encode(
90 self,
91 encoder: &mut fidl::encoding::Encoder<'_, D>,
92 offset: usize,
93 _depth: fidl::encoding::Depth,
94 ) -> fidl::Result<()> {
95 encoder.debug_check_bounds::<LauncherAddArgsRequest>(offset);
96 fidl::encoding::Encode::<LauncherAddArgsRequest, D>::encode(
98 (
99 <fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>> as fidl::encoding::ValueTypeMarker>::borrow(&self.args),
100 ),
101 encoder, offset, _depth
102 )
103 }
104 }
105 unsafe impl<
106 D: fidl::encoding::ResourceDialect,
107 T0: fidl::encoding::Encode<
108 fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>>,
109 D,
110 >,
111 > fidl::encoding::Encode<LauncherAddArgsRequest, D> for (T0,)
112 {
113 #[inline]
114 unsafe fn encode(
115 self,
116 encoder: &mut fidl::encoding::Encoder<'_, D>,
117 offset: usize,
118 depth: fidl::encoding::Depth,
119 ) -> fidl::Result<()> {
120 encoder.debug_check_bounds::<LauncherAddArgsRequest>(offset);
121 self.0.encode(encoder, offset + 0, depth)?;
125 Ok(())
126 }
127 }
128
129 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
130 for LauncherAddArgsRequest
131 {
132 #[inline(always)]
133 fn new_empty() -> Self {
134 Self {
135 args: fidl::new_empty!(
136 fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>>,
137 D
138 ),
139 }
140 }
141
142 #[inline]
143 unsafe fn decode(
144 &mut self,
145 decoder: &mut fidl::encoding::Decoder<'_, D>,
146 offset: usize,
147 _depth: fidl::encoding::Depth,
148 ) -> fidl::Result<()> {
149 decoder.debug_check_bounds::<Self>(offset);
150 fidl::decode!(
152 fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>>,
153 D,
154 &mut self.args,
155 decoder,
156 offset + 0,
157 _depth
158 )?;
159 Ok(())
160 }
161 }
162
163 impl fidl::encoding::ValueTypeMarker for LauncherAddEnvironsRequest {
164 type Borrowed<'a> = &'a Self;
165 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
166 value
167 }
168 }
169
170 unsafe impl fidl::encoding::TypeMarker for LauncherAddEnvironsRequest {
171 type Owned = Self;
172
173 #[inline(always)]
174 fn inline_align(_context: fidl::encoding::Context) -> usize {
175 8
176 }
177
178 #[inline(always)]
179 fn inline_size(_context: fidl::encoding::Context) -> usize {
180 16
181 }
182 }
183
184 unsafe impl<D: fidl::encoding::ResourceDialect>
185 fidl::encoding::Encode<LauncherAddEnvironsRequest, D> for &LauncherAddEnvironsRequest
186 {
187 #[inline]
188 unsafe fn encode(
189 self,
190 encoder: &mut fidl::encoding::Encoder<'_, D>,
191 offset: usize,
192 _depth: fidl::encoding::Depth,
193 ) -> fidl::Result<()> {
194 encoder.debug_check_bounds::<LauncherAddEnvironsRequest>(offset);
195 fidl::encoding::Encode::<LauncherAddEnvironsRequest, D>::encode(
197 (
198 <fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>> as fidl::encoding::ValueTypeMarker>::borrow(&self.environ),
199 ),
200 encoder, offset, _depth
201 )
202 }
203 }
204 unsafe impl<
205 D: fidl::encoding::ResourceDialect,
206 T0: fidl::encoding::Encode<
207 fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>>,
208 D,
209 >,
210 > fidl::encoding::Encode<LauncherAddEnvironsRequest, D> for (T0,)
211 {
212 #[inline]
213 unsafe fn encode(
214 self,
215 encoder: &mut fidl::encoding::Encoder<'_, D>,
216 offset: usize,
217 depth: fidl::encoding::Depth,
218 ) -> fidl::Result<()> {
219 encoder.debug_check_bounds::<LauncherAddEnvironsRequest>(offset);
220 self.0.encode(encoder, offset + 0, depth)?;
224 Ok(())
225 }
226 }
227
228 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
229 for LauncherAddEnvironsRequest
230 {
231 #[inline(always)]
232 fn new_empty() -> Self {
233 Self {
234 environ: fidl::new_empty!(
235 fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>>,
236 D
237 ),
238 }
239 }
240
241 #[inline]
242 unsafe fn decode(
243 &mut self,
244 decoder: &mut fidl::encoding::Decoder<'_, D>,
245 offset: usize,
246 _depth: fidl::encoding::Depth,
247 ) -> fidl::Result<()> {
248 decoder.debug_check_bounds::<Self>(offset);
249 fidl::decode!(
251 fidl::encoding::UnboundedVector<fidl::encoding::UnboundedVector<u8>>,
252 D,
253 &mut self.environ,
254 decoder,
255 offset + 0,
256 _depth
257 )?;
258 Ok(())
259 }
260 }
261
262 impl fidl::encoding::ValueTypeMarker for LauncherSetOptionsRequest {
263 type Borrowed<'a> = &'a Self;
264 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
265 value
266 }
267 }
268
269 unsafe impl fidl::encoding::TypeMarker for LauncherSetOptionsRequest {
270 type Owned = Self;
271
272 #[inline(always)]
273 fn inline_align(_context: fidl::encoding::Context) -> usize {
274 4
275 }
276
277 #[inline(always)]
278 fn inline_size(_context: fidl::encoding::Context) -> usize {
279 4
280 }
281 #[inline(always)]
282 fn encode_is_copy() -> bool {
283 true
284 }
285
286 #[inline(always)]
287 fn decode_is_copy() -> bool {
288 true
289 }
290 }
291
292 unsafe impl<D: fidl::encoding::ResourceDialect>
293 fidl::encoding::Encode<LauncherSetOptionsRequest, D> for &LauncherSetOptionsRequest
294 {
295 #[inline]
296 unsafe fn encode(
297 self,
298 encoder: &mut fidl::encoding::Encoder<'_, D>,
299 offset: usize,
300 _depth: fidl::encoding::Depth,
301 ) -> fidl::Result<()> {
302 encoder.debug_check_bounds::<LauncherSetOptionsRequest>(offset);
303 unsafe {
304 let buf_ptr = encoder.buf.as_mut_ptr().add(offset);
306 (buf_ptr as *mut LauncherSetOptionsRequest)
307 .write_unaligned((self as *const LauncherSetOptionsRequest).read());
308 }
311 Ok(())
312 }
313 }
314 unsafe impl<D: fidl::encoding::ResourceDialect, T0: fidl::encoding::Encode<u32, D>>
315 fidl::encoding::Encode<LauncherSetOptionsRequest, D> for (T0,)
316 {
317 #[inline]
318 unsafe fn encode(
319 self,
320 encoder: &mut fidl::encoding::Encoder<'_, D>,
321 offset: usize,
322 depth: fidl::encoding::Depth,
323 ) -> fidl::Result<()> {
324 encoder.debug_check_bounds::<LauncherSetOptionsRequest>(offset);
325 self.0.encode(encoder, offset + 0, depth)?;
329 Ok(())
330 }
331 }
332
333 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
334 for LauncherSetOptionsRequest
335 {
336 #[inline(always)]
337 fn new_empty() -> Self {
338 Self { options: fidl::new_empty!(u32, D) }
339 }
340
341 #[inline]
342 unsafe fn decode(
343 &mut self,
344 decoder: &mut fidl::encoding::Decoder<'_, D>,
345 offset: usize,
346 _depth: fidl::encoding::Depth,
347 ) -> fidl::Result<()> {
348 decoder.debug_check_bounds::<Self>(offset);
349 let buf_ptr = unsafe { decoder.buf.as_ptr().add(offset) };
350 unsafe {
353 std::ptr::copy_nonoverlapping(buf_ptr, self as *mut Self as *mut u8, 4);
354 }
355 Ok(())
356 }
357 }
358
359 impl fidl::encoding::ValueTypeMarker for ResolverResolveRequest {
360 type Borrowed<'a> = &'a Self;
361 fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
362 value
363 }
364 }
365
366 unsafe impl fidl::encoding::TypeMarker for ResolverResolveRequest {
367 type Owned = Self;
368
369 #[inline(always)]
370 fn inline_align(_context: fidl::encoding::Context) -> usize {
371 8
372 }
373
374 #[inline(always)]
375 fn inline_size(_context: fidl::encoding::Context) -> usize {
376 16
377 }
378 }
379
380 unsafe impl<D: fidl::encoding::ResourceDialect>
381 fidl::encoding::Encode<ResolverResolveRequest, D> for &ResolverResolveRequest
382 {
383 #[inline]
384 unsafe fn encode(
385 self,
386 encoder: &mut fidl::encoding::Encoder<'_, D>,
387 offset: usize,
388 _depth: fidl::encoding::Depth,
389 ) -> fidl::Result<()> {
390 encoder.debug_check_bounds::<ResolverResolveRequest>(offset);
391 fidl::encoding::Encode::<ResolverResolveRequest, D>::encode(
393 (<fidl::encoding::BoundedString<2048> as fidl::encoding::ValueTypeMarker>::borrow(
394 &self.name,
395 ),),
396 encoder,
397 offset,
398 _depth,
399 )
400 }
401 }
402 unsafe impl<
403 D: fidl::encoding::ResourceDialect,
404 T0: fidl::encoding::Encode<fidl::encoding::BoundedString<2048>, D>,
405 > fidl::encoding::Encode<ResolverResolveRequest, D> for (T0,)
406 {
407 #[inline]
408 unsafe fn encode(
409 self,
410 encoder: &mut fidl::encoding::Encoder<'_, D>,
411 offset: usize,
412 depth: fidl::encoding::Depth,
413 ) -> fidl::Result<()> {
414 encoder.debug_check_bounds::<ResolverResolveRequest>(offset);
415 self.0.encode(encoder, offset + 0, depth)?;
419 Ok(())
420 }
421 }
422
423 impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
424 for ResolverResolveRequest
425 {
426 #[inline(always)]
427 fn new_empty() -> Self {
428 Self { name: fidl::new_empty!(fidl::encoding::BoundedString<2048>, D) }
429 }
430
431 #[inline]
432 unsafe fn decode(
433 &mut self,
434 decoder: &mut fidl::encoding::Decoder<'_, D>,
435 offset: usize,
436 _depth: fidl::encoding::Depth,
437 ) -> fidl::Result<()> {
438 decoder.debug_check_bounds::<Self>(offset);
439 fidl::decode!(
441 fidl::encoding::BoundedString<2048>,
442 D,
443 &mut self.name,
444 decoder,
445 offset + 0,
446 _depth
447 )?;
448 Ok(())
449 }
450 }
451}