• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 ReferrableOffset {}
15 #[derive(Copy, Clone, PartialEq)]
16 
17 pub struct Referrable<'a> {
18   pub _tab: flatbuffers::Table<'a>,
19 }
20 
21 impl<'a> flatbuffers::Follow<'a> for Referrable<'a> {
22   type Inner = Referrable<'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> Referrable<'a> {
30   pub const VT_ID: flatbuffers::VOffsetT = 4;
31 
get_fully_qualified_name() -> &'static str32   pub const fn get_fully_qualified_name() -> &'static str {
33     "MyGame.Example.Referrable"
34   }
35 
36   #[inline]
init_from_table(table: flatbuffers::Table<'a>) -> Self37   pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self {
38     Referrable { _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 ReferrableArgs ) -> flatbuffers::WIPOffset<Referrable<'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 ReferrableArgs
44   ) -> flatbuffers::WIPOffset<Referrable<'bldr>> {
45     let mut builder = ReferrableBuilder::new(_fbb);
46     builder.add_id(args.id);
47     builder.finish()
48   }
49 
unpack(&self) -> ReferrableT50   pub fn unpack(&self) -> ReferrableT {
51     let id = self.id();
52     ReferrableT {
53       id,
54     }
55   }
56 
57   #[inline]
id(&self) -> u6458   pub fn id(&self) -> u64 {
59     // Safety:
60     // Created from valid Table for this object
61     // which contains a valid value in this slot
62     unsafe { self._tab.get::<u64>(Referrable::VT_ID, Some(0)).unwrap()}
63   }
64   #[inline]
key_compare_less_than(&self, o: &Referrable) -> bool65   pub fn key_compare_less_than(&self, o: &Referrable) -> bool {
66     self.id() < o.id()
67   }
68 
69   #[inline]
key_compare_with_value(&self, val: u64) -> ::core::cmp::Ordering70   pub fn key_compare_with_value(&self, val: u64) -> ::core::cmp::Ordering {
71     let key = self.id();
72     key.cmp(&val)
73   }
74 }
75 
76 impl flatbuffers::Verifiable for Referrable<'_> {
77   #[inline]
run_verifier( v: &mut flatbuffers::Verifier, pos: usize ) -> Result<(), flatbuffers::InvalidFlatbuffer>78   fn run_verifier(
79     v: &mut flatbuffers::Verifier, pos: usize
80   ) -> Result<(), flatbuffers::InvalidFlatbuffer> {
81     use self::flatbuffers::Verifiable;
82     v.visit_table(pos)?
83      .visit_field::<u64>("id", Self::VT_ID, false)?
84      .finish();
85     Ok(())
86   }
87 }
88 pub struct ReferrableArgs {
89     pub id: u64,
90 }
91 impl<'a> Default for ReferrableArgs {
92   #[inline]
default() -> Self93   fn default() -> Self {
94     ReferrableArgs {
95       id: 0,
96     }
97   }
98 }
99 
100 impl Serialize for Referrable<'_> {
serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where S: Serializer,101   fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
102   where
103     S: Serializer,
104   {
105     let mut s = serializer.serialize_struct("Referrable", 1)?;
106       s.serialize_field("id", &self.id())?;
107     s.end()
108   }
109 }
110 
111 pub struct ReferrableBuilder<'a: 'b, 'b, A: flatbuffers::Allocator + 'a> {
112   fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a, A>,
113   start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>,
114 }
115 impl<'a: 'b, 'b, A: flatbuffers::Allocator + 'a> ReferrableBuilder<'a, 'b, A> {
116   #[inline]
add_id(&mut self, id: u64)117   pub fn add_id(&mut self, id: u64) {
118     self.fbb_.push_slot::<u64>(Referrable::VT_ID, id, 0);
119   }
120   #[inline]
new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>) -> ReferrableBuilder<'a, 'b, A>121   pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a, A>) -> ReferrableBuilder<'a, 'b, A> {
122     let start = _fbb.start_table();
123     ReferrableBuilder {
124       fbb_: _fbb,
125       start_: start,
126     }
127   }
128   #[inline]
finish(self) -> flatbuffers::WIPOffset<Referrable<'a>>129   pub fn finish(self) -> flatbuffers::WIPOffset<Referrable<'a>> {
130     let o = self.fbb_.end_table(self.start_);
131     flatbuffers::WIPOffset::new(o.value())
132   }
133 }
134 
135 impl core::fmt::Debug for Referrable<'_> {
fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result136   fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
137     let mut ds = f.debug_struct("Referrable");
138       ds.field("id", &self.id());
139       ds.finish()
140   }
141 }
142 #[non_exhaustive]
143 #[derive(Debug, Clone, PartialEq)]
144 pub struct ReferrableT {
145   pub id: u64,
146 }
147 impl Default for ReferrableT {
default() -> Self148   fn default() -> Self {
149     Self {
150       id: 0,
151     }
152   }
153 }
154 impl ReferrableT {
pack<'b, A: flatbuffers::Allocator + 'b>( &self, _fbb: &mut flatbuffers::FlatBufferBuilder<'b, A> ) -> flatbuffers::WIPOffset<Referrable<'b>>155   pub fn pack<'b, A: flatbuffers::Allocator + 'b>(
156     &self,
157     _fbb: &mut flatbuffers::FlatBufferBuilder<'b, A>
158   ) -> flatbuffers::WIPOffset<Referrable<'b>> {
159     let id = self.id;
160     Referrable::create(_fbb, &ReferrableArgs{
161       id,
162     })
163   }
164 }
165