1// automatically generated by the FlatBuffers compiler, do not modify
2// @generated
3extern crate alloc;
4extern crate flatbuffers;
5use alloc::boxed::Box;
6use alloc::string::{String, ToString};
7use alloc::vec::Vec;
8use core::mem;
9use core::cmp::Ordering;
10use self::flatbuffers::{EndianScalar, Follow};
11use super::*;
12pub enum MoreDefaultsOffset {}
13#[derive(Copy, Clone, PartialEq)]
14
15pub struct MoreDefaults<'a> {
16 pub _tab: flatbuffers::Table<'a>,
17}
18
19impl<'a> flatbuffers::Follow<'a> for MoreDefaults<'a> {
20 type Inner = MoreDefaults<'a>;
21 #[inline]
22 unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
23 Self { _tab: flatbuffers::Table::new(buf, loc) }
24 }
25}
26
27impl<'a> MoreDefaults<'a> {
28 pub const VT_INTS: flatbuffers::VOffsetT = 4;
29 pub const VT_FLOATS: flatbuffers::VOffsetT = 6;
30 pub const VT_EMPTY_STRING: flatbuffers::VOffsetT = 8;
31 pub const VT_SOME_STRING: flatbuffers::VOffsetT = 10;
32 pub const VT_ABCS: flatbuffers::VOffsetT = 12;
33 pub const VT_BOOLS: flatbuffers::VOffsetT = 14;
34
35 pub const fn get_fully_qualified_name() -> &'static str {
36 "MoreDefaults"
37 }
38
39 #[inline]
40 pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self {
41 MoreDefaults { _tab: table }
42 }
43 #[allow(unused_mut)]
44 pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>(
45 _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>,
46 args: &'args MoreDefaultsArgs<'args>
47 ) -> flatbuffers::WIPOffset<MoreDefaults<'bldr>> {
48 let mut builder = MoreDefaultsBuilder::new(_fbb);
49 if let Some(x) = args.bools { builder.add_bools(x); }
50 if let Some(x) = args.abcs { builder.add_abcs(x); }
51 if let Some(x) = args.some_string { builder.add_some_string(x); }
52 if let Some(x) = args.empty_string { builder.add_empty_string(x); }
53 if let Some(x) = args.floats { builder.add_floats(x); }
54 if let Some(x) = args.ints { builder.add_ints(x); }
55 builder.finish()
56 }
57
58 pub fn unpack(&self) -> MoreDefaultsT {
59 let ints = {
60 let x = self.ints();
61 x.into_iter().collect()
62 };
63 let floats = {
64 let x = self.floats();
65 x.into_iter().collect()
66 };
67 let empty_string = {
68 let x = self.empty_string();
69 x.to_string()
70 };
71 let some_string = {
72 let x = self.some_string();
73 x.to_string()
74 };
75 let abcs = {
76 let x = self.abcs();
77 x.into_iter().collect()
78 };
79 let bools = {
80 let x = self.bools();
81 x.into_iter().collect()
82 };
83 MoreDefaultsT {
84 ints,
85 floats,
86 empty_string,
87 some_string,
88 abcs,
89 bools,
90 }
91 }
92
93 #[inline]
94 pub fn ints(&self) -> flatbuffers::Vector<'a, i32> {
95 // Safety:
96 // Created from valid Table for this object
97 // which contains a valid value in this slot
98 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'a, i32>>>(MoreDefaults::VT_INTS, Some(Default::default())).unwrap()}
99 }
100 #[inline]
101 pub fn floats(&self) -> flatbuffers::Vector<'a, f32> {
102 // Safety:
103 // Created from valid Table for this object
104 // which contains a valid value in this slot
105 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'a, f32>>>(MoreDefaults::VT_FLOATS, Some(Default::default())).unwrap()}
106 }
107 #[inline]
108 pub fn empty_string(&self) -> &'a str {
109 // Safety:
110 // Created from valid Table for this object
111 // which contains a valid value in this slot
112 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(MoreDefaults::VT_EMPTY_STRING, Some(&"")).unwrap()}
113 }
114 #[inline]
115 pub fn some_string(&self) -> &'a str {
116 // Safety:
117 // Created from valid Table for this object
118 // which contains a valid value in this slot
119 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(MoreDefaults::VT_SOME_STRING, Some(&"some")).unwrap()}
120 }
121 #[inline]
122 pub fn abcs(&self) -> flatbuffers::Vector<'a, ABC> {
123 // Safety:
124 // Created from valid Table for this object
125 // which contains a valid value in this slot
126 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'a, ABC>>>(MoreDefaults::VT_ABCS, Some(Default::default())).unwrap()}
127 }
128 #[inline]
129 pub fn bools(&self) -> flatbuffers::Vector<'a, bool> {
130 // Safety:
131 // Created from valid Table for this object
132 // which contains a valid value in this slot
133 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'a, bool>>>(MoreDefaults::VT_BOOLS, Some(Default::default())).unwrap()}
134 }
135}
136
137impl flatbuffers::Verifiable for MoreDefaults<'_> {
138 #[inline]
139 fn run_verifier(
140 v: &mut flatbuffers::Verifier, pos: usize
141 ) -> Result<(), flatbuffers::InvalidFlatbuffer> {
142 use self::flatbuffers::Verifiable;
143 v.visit_table(pos)?
144 .visit_field::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'_, i32>>>("ints", Self::VT_INTS, false)?
145 .visit_field::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'_, f32>>>("floats", Self::VT_FLOATS, false)?
146 .visit_field::<flatbuffers::ForwardsUOffset<&str>>("empty_string", Self::VT_EMPTY_STRING, false)?
147 .visit_field::<flatbuffers::ForwardsUOffset<&str>>("some_string", Self::VT_SOME_STRING, false)?
148 .visit_field::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'_, ABC>>>("abcs", Self::VT_ABCS, false)?
149 .visit_field::<flatbuffers::ForwardsUOffset<flatbuffers::Vector<'_, bool>>>("bools", Self::VT_BOOLS, false)?
150 .finish();
151 Ok(())
152 }
153}
154pub struct MoreDefaultsArgs<'a> {
155 pub ints: Option<flatbuffers::WIPOffset<flatbuffers::Vector<'a, i32>>>,
156 pub floats: Option<flatbuffers::WIPOffset<flatbuffers::Vector<'a, f32>>>,
157 pub empty_string: Option<flatbuffers::WIPOffset<&'a str>>,
158 pub some_string: Option<flatbuffers::WIPOffset<&'a str>>,
159 pub abcs: Option<flatbuffers::WIPOffset<flatbuffers::Vector<'a, ABC>>>,
160 pub bools: Option<flatbuffers::WIPOffset<flatbuffers::Vector<'a, bool>>>,
161}
162impl<'a> Default for MoreDefaultsArgs<'a> {
163 #[inline]
164 fn default() -> Self {
165 MoreDefaultsArgs {
166 ints: None,
167 floats: None,
168 empty_string: None,
169 some_string: None,
170 abcs: None,
171 bools: None,
172 }
173 }
174}
175
176pub struct MoreDefaultsBuilder<'a: 'b, 'b> {
177 fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>,
178 start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>,
179}
180impl<'a: 'b, 'b> MoreDefaultsBuilder<'a, 'b> {
181 #[inline]
182 pub fn add_ints(&mut self, ints: flatbuffers::WIPOffset<flatbuffers::Vector<'b , i32>>) {
183 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(MoreDefaults::VT_INTS, ints);
184 }
185 #[inline]
186 pub fn add_floats(&mut self, floats: flatbuffers::WIPOffset<flatbuffers::Vector<'b , f32>>) {
187 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(MoreDefaults::VT_FLOATS, floats);
188 }
189 #[inline]
190 pub fn add_empty_string(&mut self, empty_string: flatbuffers::WIPOffset<&'b str>) {
191 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(MoreDefaults::VT_EMPTY_STRING, empty_string);
192 }
193 #[inline]
194 pub fn add_some_string(&mut self, some_string: flatbuffers::WIPOffset<&'b str>) {
195 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(MoreDefaults::VT_SOME_STRING, some_string);
196 }
197 #[inline]
198 pub fn add_abcs(&mut self, abcs: flatbuffers::WIPOffset<flatbuffers::Vector<'b , ABC>>) {
199 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(MoreDefaults::VT_ABCS, abcs);
200 }
201 #[inline]
202 pub fn add_bools(&mut self, bools: flatbuffers::WIPOffset<flatbuffers::Vector<'b , bool>>) {
203 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(MoreDefaults::VT_BOOLS, bools);
204 }
205 #[inline]
206 pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> MoreDefaultsBuilder<'a, 'b> {
207 let start = _fbb.start_table();
208 MoreDefaultsBuilder {
209 fbb_: _fbb,
210 start_: start,
211 }
212 }
213 #[inline]
214 pub fn finish(self) -> flatbuffers::WIPOffset<MoreDefaults<'a>> {
215 let o = self.fbb_.end_table(self.start_);
216 flatbuffers::WIPOffset::new(o.value())
217 }
218}
219
220impl core::fmt::Debug for MoreDefaults<'_> {
221 fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
222 let mut ds = f.debug_struct("MoreDefaults");
223 ds.field("ints", &self.ints());
224 ds.field("floats", &self.floats());
225 ds.field("empty_string", &self.empty_string());
226 ds.field("some_string", &self.some_string());
227 ds.field("abcs", &self.abcs());
228 ds.field("bools", &self.bools());
229 ds.finish()
230 }
231}
232#[non_exhaustive]
233#[derive(Debug, Clone, PartialEq)]
234pub struct MoreDefaultsT {
235 pub ints: Vec<i32>,
236 pub floats: Vec<f32>,
237 pub empty_string: String,
238 pub some_string: String,
239 pub abcs: Vec<ABC>,
240 pub bools: Vec<bool>,
241}
242impl Default for MoreDefaultsT {
243 fn default() -> Self {
244 Self {
245 ints: Default::default(),
246 floats: Default::default(),
247 empty_string: "".to_string(),
248 some_string: "some".to_string(),
249 abcs: Default::default(),
250 bools: Default::default(),
251 }
252 }
253}
254impl MoreDefaultsT {
255 pub fn pack<'b>(
256 &self,
257 _fbb: &mut flatbuffers::FlatBufferBuilder<'b>
258 ) -> flatbuffers::WIPOffset<MoreDefaults<'b>> {
259 let ints = Some({
260 let x = &self.ints;
261 _fbb.create_vector(x)
262 });
263 let floats = Some({
264 let x = &self.floats;
265 _fbb.create_vector(x)
266 });
267 let empty_string = Some({
268 let x = &self.empty_string;
269 _fbb.create_string(x)
270 });
271 let some_string = Some({
272 let x = &self.some_string;
273 _fbb.create_string(x)
274 });
275 let abcs = Some({
276 let x = &self.abcs;
277 _fbb.create_vector(x)
278 });
279 let bools = Some({
280 let x = &self.bools;
281 _fbb.create_vector(x)
282 });
283 MoreDefaults::create(_fbb, &MoreDefaultsArgs{
284 ints,
285 floats,
286 empty_string,
287 some_string,
288 abcs,
289 bools,
290 })
291 }
292}
View as plain text