1 // automatically generated by the FlatBuffers compiler, do not modify 2 3 4 5 use crate::namespace_test1_generated::*; 6 use std::mem; 7 use std::cmp::Ordering; 8 9 extern crate flatbuffers; 10 use self::flatbuffers::EndianScalar; 11 12 #[allow(unused_imports, dead_code)] 13 pub mod namespace_a { 14 15 use crate::namespace_test1_generated::*; 16 use std::mem; 17 use std::cmp::Ordering; 18 19 extern crate flatbuffers; 20 use self::flatbuffers::EndianScalar; 21 22 pub enum TableInFirstNSOffset {} 23 #[derive(Copy, Clone, Debug, PartialEq)] 24 25 pub struct TableInFirstNS<'a> { 26 pub _tab: flatbuffers::Table<'a>, 27 } 28 29 impl<'a> flatbuffers::Follow<'a> for TableInFirstNS<'a> { 30 type Inner = TableInFirstNS<'a>; 31 #[inline] follow(buf: &'a [u8], loc: usize) -> Self::Inner32 fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { 33 Self { 34 _tab: flatbuffers::Table { buf: buf, loc: loc }, 35 } 36 } 37 } 38 39 impl<'a> TableInFirstNS<'a> { 40 #[inline] init_from_table(table: flatbuffers::Table<'a>) -> Self41 pub fn init_from_table(table: flatbuffers::Table<'a>) -> Self { 42 TableInFirstNS { 43 _tab: table, 44 } 45 } 46 #[allow(unused_mut)] create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, args: &'args TableInFirstNSArgs<'args>) -> flatbuffers::WIPOffset<TableInFirstNS<'bldr>>47 pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( 48 _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, 49 args: &'args TableInFirstNSArgs<'args>) -> flatbuffers::WIPOffset<TableInFirstNS<'bldr>> { 50 let mut builder = TableInFirstNSBuilder::new(_fbb); 51 if let Some(x) = args.foo_struct { builder.add_foo_struct(x); } 52 if let Some(x) = args.foo_table { builder.add_foo_table(x); } 53 builder.add_foo_enum(args.foo_enum); 54 builder.finish() 55 } 56 57 pub const VT_FOO_TABLE: flatbuffers::VOffsetT = 4; 58 pub const VT_FOO_ENUM: flatbuffers::VOffsetT = 6; 59 pub const VT_FOO_STRUCT: flatbuffers::VOffsetT = 8; 60 61 #[inline] foo_table(&self) -> Option<namespace_b::TableInNestedNS<'a>>62 pub fn foo_table(&self) -> Option<namespace_b::TableInNestedNS<'a>> { 63 self._tab.get::<flatbuffers::ForwardsUOffset<namespace_b::TableInNestedNS<'a>>>(TableInFirstNS::VT_FOO_TABLE, None) 64 } 65 #[inline] foo_enum(&self) -> namespace_b::EnumInNestedNS66 pub fn foo_enum(&self) -> namespace_b::EnumInNestedNS { 67 self._tab.get::<namespace_b::EnumInNestedNS>(TableInFirstNS::VT_FOO_ENUM, Some(namespace_b::EnumInNestedNS::A)).unwrap() 68 } 69 #[inline] foo_struct(&self) -> Option<&'a namespace_b::StructInNestedNS>70 pub fn foo_struct(&self) -> Option<&'a namespace_b::StructInNestedNS> { 71 self._tab.get::<namespace_b::StructInNestedNS>(TableInFirstNS::VT_FOO_STRUCT, None) 72 } 73 } 74 75 pub struct TableInFirstNSArgs<'a> { 76 pub foo_table: Option<flatbuffers::WIPOffset<namespace_b::TableInNestedNS<'a >>>, 77 pub foo_enum: namespace_b::EnumInNestedNS, 78 pub foo_struct: Option<&'a namespace_b::StructInNestedNS>, 79 } 80 impl<'a> Default for TableInFirstNSArgs<'a> { 81 #[inline] default() -> Self82 fn default() -> Self { 83 TableInFirstNSArgs { 84 foo_table: None, 85 foo_enum: namespace_b::EnumInNestedNS::A, 86 foo_struct: None, 87 } 88 } 89 } 90 pub struct TableInFirstNSBuilder<'a: 'b, 'b> { 91 fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, 92 start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, 93 } 94 impl<'a: 'b, 'b> TableInFirstNSBuilder<'a, 'b> { 95 #[inline] add_foo_table(&mut self, foo_table: flatbuffers::WIPOffset<namespace_b::TableInNestedNS<'b >>)96 pub fn add_foo_table(&mut self, foo_table: flatbuffers::WIPOffset<namespace_b::TableInNestedNS<'b >>) { 97 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<namespace_b::TableInNestedNS>>(TableInFirstNS::VT_FOO_TABLE, foo_table); 98 } 99 #[inline] add_foo_enum(&mut self, foo_enum: namespace_b::EnumInNestedNS)100 pub fn add_foo_enum(&mut self, foo_enum: namespace_b::EnumInNestedNS) { 101 self.fbb_.push_slot::<namespace_b::EnumInNestedNS>(TableInFirstNS::VT_FOO_ENUM, foo_enum, namespace_b::EnumInNestedNS::A); 102 } 103 #[inline] add_foo_struct(&mut self, foo_struct: &'b namespace_b::StructInNestedNS)104 pub fn add_foo_struct(&mut self, foo_struct: &'b namespace_b::StructInNestedNS) { 105 self.fbb_.push_slot_always::<&namespace_b::StructInNestedNS>(TableInFirstNS::VT_FOO_STRUCT, foo_struct); 106 } 107 #[inline] new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> TableInFirstNSBuilder<'a, 'b>108 pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> TableInFirstNSBuilder<'a, 'b> { 109 let start = _fbb.start_table(); 110 TableInFirstNSBuilder { 111 fbb_: _fbb, 112 start_: start, 113 } 114 } 115 #[inline] finish(self) -> flatbuffers::WIPOffset<TableInFirstNS<'a>>116 pub fn finish(self) -> flatbuffers::WIPOffset<TableInFirstNS<'a>> { 117 let o = self.fbb_.end_table(self.start_); 118 flatbuffers::WIPOffset::new(o.value()) 119 } 120 } 121 122 pub enum SecondTableInAOffset {} 123 #[derive(Copy, Clone, Debug, PartialEq)] 124 125 pub struct SecondTableInA<'a> { 126 pub _tab: flatbuffers::Table<'a>, 127 } 128 129 impl<'a> flatbuffers::Follow<'a> for SecondTableInA<'a> { 130 type Inner = SecondTableInA<'a>; 131 #[inline] follow(buf: &'a [u8], loc: usize) -> Self::Inner132 fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { 133 Self { 134 _tab: flatbuffers::Table { buf: buf, loc: loc }, 135 } 136 } 137 } 138 139 impl<'a> SecondTableInA<'a> { 140 #[inline] init_from_table(table: flatbuffers::Table<'a>) -> Self141 pub fn init_from_table(table: flatbuffers::Table<'a>) -> Self { 142 SecondTableInA { 143 _tab: table, 144 } 145 } 146 #[allow(unused_mut)] create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, args: &'args SecondTableInAArgs<'args>) -> flatbuffers::WIPOffset<SecondTableInA<'bldr>>147 pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( 148 _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, 149 args: &'args SecondTableInAArgs<'args>) -> flatbuffers::WIPOffset<SecondTableInA<'bldr>> { 150 let mut builder = SecondTableInABuilder::new(_fbb); 151 if let Some(x) = args.refer_to_c { builder.add_refer_to_c(x); } 152 builder.finish() 153 } 154 155 pub const VT_REFER_TO_C: flatbuffers::VOffsetT = 4; 156 157 #[inline] refer_to_c(&self) -> Option<super::namespace_c::TableInC<'a>>158 pub fn refer_to_c(&self) -> Option<super::namespace_c::TableInC<'a>> { 159 self._tab.get::<flatbuffers::ForwardsUOffset<super::namespace_c::TableInC<'a>>>(SecondTableInA::VT_REFER_TO_C, None) 160 } 161 } 162 163 pub struct SecondTableInAArgs<'a> { 164 pub refer_to_c: Option<flatbuffers::WIPOffset<super::namespace_c::TableInC<'a >>>, 165 } 166 impl<'a> Default for SecondTableInAArgs<'a> { 167 #[inline] default() -> Self168 fn default() -> Self { 169 SecondTableInAArgs { 170 refer_to_c: None, 171 } 172 } 173 } 174 pub struct SecondTableInABuilder<'a: 'b, 'b> { 175 fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, 176 start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, 177 } 178 impl<'a: 'b, 'b> SecondTableInABuilder<'a, 'b> { 179 #[inline] add_refer_to_c(&mut self, refer_to_c: flatbuffers::WIPOffset<super::namespace_c::TableInC<'b >>)180 pub fn add_refer_to_c(&mut self, refer_to_c: flatbuffers::WIPOffset<super::namespace_c::TableInC<'b >>) { 181 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<super::namespace_c::TableInC>>(SecondTableInA::VT_REFER_TO_C, refer_to_c); 182 } 183 #[inline] new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> SecondTableInABuilder<'a, 'b>184 pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> SecondTableInABuilder<'a, 'b> { 185 let start = _fbb.start_table(); 186 SecondTableInABuilder { 187 fbb_: _fbb, 188 start_: start, 189 } 190 } 191 #[inline] finish(self) -> flatbuffers::WIPOffset<SecondTableInA<'a>>192 pub fn finish(self) -> flatbuffers::WIPOffset<SecondTableInA<'a>> { 193 let o = self.fbb_.end_table(self.start_); 194 flatbuffers::WIPOffset::new(o.value()) 195 } 196 } 197 198 } // pub mod NamespaceA 199 200 #[allow(unused_imports, dead_code)] 201 pub mod namespace_c { 202 203 use crate::namespace_test1_generated::*; 204 use std::mem; 205 use std::cmp::Ordering; 206 207 extern crate flatbuffers; 208 use self::flatbuffers::EndianScalar; 209 210 pub enum TableInCOffset {} 211 #[derive(Copy, Clone, Debug, PartialEq)] 212 213 pub struct TableInC<'a> { 214 pub _tab: flatbuffers::Table<'a>, 215 } 216 217 impl<'a> flatbuffers::Follow<'a> for TableInC<'a> { 218 type Inner = TableInC<'a>; 219 #[inline] follow(buf: &'a [u8], loc: usize) -> Self::Inner220 fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { 221 Self { 222 _tab: flatbuffers::Table { buf: buf, loc: loc }, 223 } 224 } 225 } 226 227 impl<'a> TableInC<'a> { 228 #[inline] init_from_table(table: flatbuffers::Table<'a>) -> Self229 pub fn init_from_table(table: flatbuffers::Table<'a>) -> Self { 230 TableInC { 231 _tab: table, 232 } 233 } 234 #[allow(unused_mut)] create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, args: &'args TableInCArgs<'args>) -> flatbuffers::WIPOffset<TableInC<'bldr>>235 pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( 236 _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, 237 args: &'args TableInCArgs<'args>) -> flatbuffers::WIPOffset<TableInC<'bldr>> { 238 let mut builder = TableInCBuilder::new(_fbb); 239 if let Some(x) = args.refer_to_a2 { builder.add_refer_to_a2(x); } 240 if let Some(x) = args.refer_to_a1 { builder.add_refer_to_a1(x); } 241 builder.finish() 242 } 243 244 pub const VT_REFER_TO_A1: flatbuffers::VOffsetT = 4; 245 pub const VT_REFER_TO_A2: flatbuffers::VOffsetT = 6; 246 247 #[inline] refer_to_a1(&self) -> Option<super::namespace_a::TableInFirstNS<'a>>248 pub fn refer_to_a1(&self) -> Option<super::namespace_a::TableInFirstNS<'a>> { 249 self._tab.get::<flatbuffers::ForwardsUOffset<super::namespace_a::TableInFirstNS<'a>>>(TableInC::VT_REFER_TO_A1, None) 250 } 251 #[inline] refer_to_a2(&self) -> Option<super::namespace_a::SecondTableInA<'a>>252 pub fn refer_to_a2(&self) -> Option<super::namespace_a::SecondTableInA<'a>> { 253 self._tab.get::<flatbuffers::ForwardsUOffset<super::namespace_a::SecondTableInA<'a>>>(TableInC::VT_REFER_TO_A2, None) 254 } 255 } 256 257 pub struct TableInCArgs<'a> { 258 pub refer_to_a1: Option<flatbuffers::WIPOffset<super::namespace_a::TableInFirstNS<'a >>>, 259 pub refer_to_a2: Option<flatbuffers::WIPOffset<super::namespace_a::SecondTableInA<'a >>>, 260 } 261 impl<'a> Default for TableInCArgs<'a> { 262 #[inline] default() -> Self263 fn default() -> Self { 264 TableInCArgs { 265 refer_to_a1: None, 266 refer_to_a2: None, 267 } 268 } 269 } 270 pub struct TableInCBuilder<'a: 'b, 'b> { 271 fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, 272 start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, 273 } 274 impl<'a: 'b, 'b> TableInCBuilder<'a, 'b> { 275 #[inline] add_refer_to_a1(&mut self, refer_to_a1: flatbuffers::WIPOffset<super::namespace_a::TableInFirstNS<'b >>)276 pub fn add_refer_to_a1(&mut self, refer_to_a1: flatbuffers::WIPOffset<super::namespace_a::TableInFirstNS<'b >>) { 277 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<super::namespace_a::TableInFirstNS>>(TableInC::VT_REFER_TO_A1, refer_to_a1); 278 } 279 #[inline] add_refer_to_a2(&mut self, refer_to_a2: flatbuffers::WIPOffset<super::namespace_a::SecondTableInA<'b >>)280 pub fn add_refer_to_a2(&mut self, refer_to_a2: flatbuffers::WIPOffset<super::namespace_a::SecondTableInA<'b >>) { 281 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<super::namespace_a::SecondTableInA>>(TableInC::VT_REFER_TO_A2, refer_to_a2); 282 } 283 #[inline] new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> TableInCBuilder<'a, 'b>284 pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> TableInCBuilder<'a, 'b> { 285 let start = _fbb.start_table(); 286 TableInCBuilder { 287 fbb_: _fbb, 288 start_: start, 289 } 290 } 291 #[inline] finish(self) -> flatbuffers::WIPOffset<TableInC<'a>>292 pub fn finish(self) -> flatbuffers::WIPOffset<TableInC<'a>> { 293 let o = self.fbb_.end_table(self.start_); 294 flatbuffers::WIPOffset::new(o.value()) 295 } 296 } 297 298 } // pub mod NamespaceC 299 300