1 // automatically generated by the FlatBuffers compiler, do not modify 2 // @generated 3 extern crate alloc; 4 extern crate flatbuffers; 5 use alloc::boxed::Box; 6 use alloc::string::{String, ToString}; 7 use alloc::vec::Vec; 8 use core::mem; 9 use core::cmp::Ordering; 10 extern crate serde; 11 use self::serde::ser::{Serialize, Serializer, SerializeStruct}; 12 use self::flatbuffers::{EndianScalar, Follow}; 13 use super::*; 14 pub enum TableAOffset {} 15 #[derive(Copy, Clone, PartialEq)] 16 17 pub struct TableA<'a> { 18 pub _tab: flatbuffers::Table<'a>, 19 } 20 21 impl<'a> flatbuffers::Follow<'a> for TableA<'a> { 22 type Inner = TableA<'a>; 23 #[inline] follow(buf: &'a [u8], loc: usize) -> Self::Inner24 unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { 25 Self { _tab: flatbuffers::Table::new(buf, loc) } 26 } 27 } 28 29 impl<'a> TableA<'a> { 30 pub const VT_B: flatbuffers::VOffsetT = 4; 31 get_fully_qualified_name() -> &'static str32 pub const fn get_fully_qualified_name() -> &'static str { 33 "TableA" 34 } 35 36 #[inline] init_from_table(table: flatbuffers::Table<'a>) -> Self37 pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self { 38 TableA { _tab: table } 39 } 40 #[allow(unused_mut)] create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr, A: flatbuffers::Allocator + 'bldr>( _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr, A>, args: &'args TableAArgs<'args> ) -> flatbuffers::WIPOffset<TableA<'bldr>>41 pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr, A: flatbuffers::Allocator + 'bldr>( 42 _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr, A>, 43 args: &'args TableAArgs<'args> 44 ) -> flatbuffers::WIPOffset<TableA<'bldr>> { 45 let mut builder = TableABuilder::new(_fbb); 46 if let Some(x) = args.b { builder.add_b(x); } 47 builder.finish() 48 } 49 unpack(&self) -> TableAT50 pub fn unpack(&self) -> TableAT { 51 let b = self.b().map(|x| { 52 Box::new(x.unpack()) 53 }); 54 TableAT { 55 b, 56 } 57 } 58 59 #[inline] b(&self) -> Option<my_game::other_name_space::TableB<'a>>60 pub fn b(&self) -> Option<my_game::other_name_space::TableB<'a>> { 61 // Safety: 62 // Created from valid Table for this object 63 // which contains a valid value in this slot 64 unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<my_game::other_name_space::TableB>>(TableA::VT_B, None)} 65 } 66 } 67 68 impl flatbuffers::Verifiable for TableA<'_> { 69 #[inline] run_verifier( v: &mut flatbuffers::Verifier, pos: usize ) -> Result<(), flatbuffers::InvalidFlatbuffer>70 fn run_verifier( 71 v: &mut flatbuffers::Verifier, pos: usize 72 ) -> Result<(), flatbuffers::InvalidFlatbuffer> { 73 use self::flatbuffers::Verifiable; 74 v.visit_table(pos)? 75 .visit_field::<flatbuffers::ForwardsUOffset<my_game::other_name_space::TableB>>("b", Self::VT_B, false)? 76 .finish(); 77 Ok(()) 78 } 79 } 80 pub struct TableAArgs<'a> { 81 pub b: Option<flatbuffers::WIPOffset<my_game::other_name_space::TableB<'a>>>, 82 } 83 impl<'a> Default for TableAArgs<'a> { 84 #[inline] default() -> Self85 fn default() -> Self { 86 TableAArgs { 87 b: None, 88 } 89 } 90 } 91 92 impl Serialize for TableA<'_> { serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where S: Serializer,93 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> 94 where 95 S: Serializer, 96 { 97 let mut s = serializer.serialize_struct("TableA", 1)?; 98 if let Some(f) = self.b() { 99 s.serialize_field("b", &f)?; 100 } else { 101 s.skip_field("b")?; 102 } 103 s.end() 104 } 105 } 106 107 pub struct TableABuilder<'a: 'b, 'b, A: flatbuffers::Allocator + 'a> { 108 fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a, A>, 109 start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, 110 } 111 impl<'a: 'b, 'b, A: flatbuffers::Allocator + 'a> TableABuilder<'a, 'b, A> { 112 #[inline] add_b(&mut self, b: flatbuffers::WIPOffset<my_game::other_name_space::TableB<'b >>)113 pub fn add_b(&mut self, b: flatbuffers::WIPOffset<my_game::other_name_space::TableB<'b >>) { 114 self.fbb_.push_slot_always::<flatbuffers::WIPOffset<my_game::other_name_space::TableB>>(TableA::VT_B, b); 115 } 116 #[inline] new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>) -> TableABuilder<'a, 'b, A>117 pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>) -> TableABuilder<'a, 'b, A> { 118 let start = _fbb.start_table(); 119 TableABuilder { 120 fbb_: _fbb, 121 start_: start, 122 } 123 } 124 #[inline] finish(self) -> flatbuffers::WIPOffset<TableA<'a>>125 pub fn finish(self) -> flatbuffers::WIPOffset<TableA<'a>> { 126 let o = self.fbb_.end_table(self.start_); 127 flatbuffers::WIPOffset::new(o.value()) 128 } 129 } 130 131 impl core::fmt::Debug for TableA<'_> { fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result132 fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { 133 let mut ds = f.debug_struct("TableA"); 134 ds.field("b", &self.b()); 135 ds.finish() 136 } 137 } 138 #[non_exhaustive] 139 #[derive(Debug, Clone, PartialEq)] 140 pub struct TableAT { 141 pub b: Option<Box<my_game::other_name_space::TableBT>>, 142 } 143 impl Default for TableAT { default() -> Self144 fn default() -> Self { 145 Self { 146 b: None, 147 } 148 } 149 } 150 impl TableAT { pack<'b, A: flatbuffers::Allocator + 'b>( &self, _fbb: &mut flatbuffers::FlatBufferBuilder<'b, A> ) -> flatbuffers::WIPOffset<TableA<'b>>151 pub fn pack<'b, A: flatbuffers::Allocator + 'b>( 152 &self, 153 _fbb: &mut flatbuffers::FlatBufferBuilder<'b, A> 154 ) -> flatbuffers::WIPOffset<TableA<'b>> { 155 let b = self.b.as_ref().map(|x|{ 156 x.pack(_fbb) 157 }); 158 TableA::create(_fbb, &TableAArgs{ 159 b, 160 }) 161 } 162 } 163