Skip to main content

fidl_fuchsia_net_policy_testing__common/
fidl_fuchsia_net_policy_testing__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
11#[derive(Clone, Debug, PartialEq)]
12pub struct FakeNetcfgSetDnsRequest {
13    pub servers: Vec<fidl_fuchsia_net_name__common::DnsServer_>,
14}
15
16impl fidl::Persistable for FakeNetcfgSetDnsRequest {}
17
18#[derive(Clone, Debug, PartialEq)]
19pub struct FakeSocketProxySetDnsRequest {
20    pub servers: Vec<fidl_fuchsia_net_policy_socketproxy__common::DnsServerList>,
21}
22
23impl fidl::Persistable for FakeSocketProxySetDnsRequest {}
24
25pub mod fake_netcfg_ordinals {
26    pub const SET_DNS: u64 = 0x421f1e5625f36896;
27}
28
29pub mod fake_socket_proxy__ordinals {
30    pub const SET_DNS: u64 = 0x5b24fd7a0d73c2d1;
31}
32
33mod internal {
34    use super::*;
35
36    impl fidl::encoding::ValueTypeMarker for FakeNetcfgSetDnsRequest {
37        type Borrowed<'a> = &'a Self;
38        fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
39            value
40        }
41    }
42
43    unsafe impl fidl::encoding::TypeMarker for FakeNetcfgSetDnsRequest {
44        type Owned = Self;
45
46        #[inline(always)]
47        fn inline_align(_context: fidl::encoding::Context) -> usize {
48            8
49        }
50
51        #[inline(always)]
52        fn inline_size(_context: fidl::encoding::Context) -> usize {
53            16
54        }
55    }
56
57    unsafe impl<D: fidl::encoding::ResourceDialect>
58        fidl::encoding::Encode<FakeNetcfgSetDnsRequest, D> for &FakeNetcfgSetDnsRequest
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::<FakeNetcfgSetDnsRequest>(offset);
68            // Delegate to tuple encoding.
69            fidl::encoding::Encode::<FakeNetcfgSetDnsRequest, D>::encode(
70                (
71                    <fidl::encoding::UnboundedVector<fidl_fuchsia_net_name__common::DnsServer_> as fidl::encoding::ValueTypeMarker>::borrow(&self.servers),
72                ),
73                encoder, offset, _depth
74            )
75        }
76    }
77    unsafe impl<
78        D: fidl::encoding::ResourceDialect,
79        T0: fidl::encoding::Encode<
80                fidl::encoding::UnboundedVector<fidl_fuchsia_net_name__common::DnsServer_>,
81                D,
82            >,
83    > fidl::encoding::Encode<FakeNetcfgSetDnsRequest, D> for (T0,)
84    {
85        #[inline]
86        unsafe fn encode(
87            self,
88            encoder: &mut fidl::encoding::Encoder<'_, D>,
89            offset: usize,
90            depth: fidl::encoding::Depth,
91        ) -> fidl::Result<()> {
92            encoder.debug_check_bounds::<FakeNetcfgSetDnsRequest>(offset);
93            // Zero out padding regions. There's no need to apply masks
94            // because the unmasked parts will be overwritten by fields.
95            // Write the fields.
96            self.0.encode(encoder, offset + 0, depth)?;
97            Ok(())
98        }
99    }
100
101    impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
102        for FakeNetcfgSetDnsRequest
103    {
104        #[inline(always)]
105        fn new_empty() -> Self {
106            Self {
107                servers: fidl::new_empty!(
108                    fidl::encoding::UnboundedVector<fidl_fuchsia_net_name__common::DnsServer_>,
109                    D
110                ),
111            }
112        }
113
114        #[inline]
115        unsafe fn decode(
116            &mut self,
117            decoder: &mut fidl::encoding::Decoder<'_, D>,
118            offset: usize,
119            _depth: fidl::encoding::Depth,
120        ) -> fidl::Result<()> {
121            decoder.debug_check_bounds::<Self>(offset);
122            // Verify that padding bytes are zero.
123            fidl::decode!(
124                fidl::encoding::UnboundedVector<fidl_fuchsia_net_name__common::DnsServer_>,
125                D,
126                &mut self.servers,
127                decoder,
128                offset + 0,
129                _depth
130            )?;
131            Ok(())
132        }
133    }
134
135    impl fidl::encoding::ValueTypeMarker for FakeSocketProxySetDnsRequest {
136        type Borrowed<'a> = &'a Self;
137        fn borrow(value: &<Self as fidl::encoding::TypeMarker>::Owned) -> Self::Borrowed<'_> {
138            value
139        }
140    }
141
142    unsafe impl fidl::encoding::TypeMarker for FakeSocketProxySetDnsRequest {
143        type Owned = Self;
144
145        #[inline(always)]
146        fn inline_align(_context: fidl::encoding::Context) -> usize {
147            8
148        }
149
150        #[inline(always)]
151        fn inline_size(_context: fidl::encoding::Context) -> usize {
152            16
153        }
154    }
155
156    unsafe impl<D: fidl::encoding::ResourceDialect>
157        fidl::encoding::Encode<FakeSocketProxySetDnsRequest, D> for &FakeSocketProxySetDnsRequest
158    {
159        #[inline]
160        unsafe fn encode(
161            self,
162            encoder: &mut fidl::encoding::Encoder<'_, D>,
163            offset: usize,
164            _depth: fidl::encoding::Depth,
165        ) -> fidl::Result<()> {
166            encoder.debug_check_bounds::<FakeSocketProxySetDnsRequest>(offset);
167            // Delegate to tuple encoding.
168            fidl::encoding::Encode::<FakeSocketProxySetDnsRequest, D>::encode(
169                (<fidl::encoding::UnboundedVector<
170                    fidl_fuchsia_net_policy_socketproxy__common::DnsServerList,
171                > as fidl::encoding::ValueTypeMarker>::borrow(&self.servers),),
172                encoder,
173                offset,
174                _depth,
175            )
176        }
177    }
178    unsafe impl<
179        D: fidl::encoding::ResourceDialect,
180        T0: fidl::encoding::Encode<
181                fidl::encoding::UnboundedVector<
182                    fidl_fuchsia_net_policy_socketproxy__common::DnsServerList,
183                >,
184                D,
185            >,
186    > fidl::encoding::Encode<FakeSocketProxySetDnsRequest, D> for (T0,)
187    {
188        #[inline]
189        unsafe fn encode(
190            self,
191            encoder: &mut fidl::encoding::Encoder<'_, D>,
192            offset: usize,
193            depth: fidl::encoding::Depth,
194        ) -> fidl::Result<()> {
195            encoder.debug_check_bounds::<FakeSocketProxySetDnsRequest>(offset);
196            // Zero out padding regions. There's no need to apply masks
197            // because the unmasked parts will be overwritten by fields.
198            // Write the fields.
199            self.0.encode(encoder, offset + 0, depth)?;
200            Ok(())
201        }
202    }
203
204    impl<D: fidl::encoding::ResourceDialect> fidl::encoding::Decode<Self, D>
205        for FakeSocketProxySetDnsRequest
206    {
207        #[inline(always)]
208        fn new_empty() -> Self {
209            Self {
210                servers: fidl::new_empty!(
211                    fidl::encoding::UnboundedVector<
212                        fidl_fuchsia_net_policy_socketproxy__common::DnsServerList,
213                    >,
214                    D
215                ),
216            }
217        }
218
219        #[inline]
220        unsafe fn decode(
221            &mut self,
222            decoder: &mut fidl::encoding::Decoder<'_, D>,
223            offset: usize,
224            _depth: fidl::encoding::Depth,
225        ) -> fidl::Result<()> {
226            decoder.debug_check_bounds::<Self>(offset);
227            // Verify that padding bytes are zero.
228            fidl::decode!(
229                fidl::encoding::UnboundedVector<
230                    fidl_fuchsia_net_policy_socketproxy__common::DnsServerList,
231                >,
232                D,
233                &mut self.servers,
234                decoder,
235                offset + 0,
236                _depth
237            )?;
238            Ok(())
239        }
240    }
241}