...
1#[ Universe
2 Automatically generated by the FlatBuffers compiler, do not modify.
3 Or modify. I'm a message, not a cop.
4
5 flatc version: 23.5.9
6
7 Declared by : //basic.fbs
8 Rooting type : Universe (//basic.fbs)
9]#
10
11import Galaxy as Galaxy
12import flatbuffers
13import std/options
14
15type Universe* = object of FlatObj
16func age*(self: Universe): float64 =
17 let o = self.tab.Offset(4)
18 if o != 0:
19 return Get[float64](self.tab, self.tab.Pos + o)
20 return 0.0
21func `age=`*(self: var Universe, n: float64): bool =
22 return self.tab.MutateSlot(4, n)
23func galaxiesLength*(self: Universe): int =
24 let o = self.tab.Offset(6)
25 if o != 0:
26 return self.tab.VectorLen(o)
27func galaxies*(self: Universe, j: int): Galaxy.Galaxy =
28 let o = self.tab.Offset(6)
29 if o != 0:
30 var x = self.tab.Vector(o)
31 x += j.uoffset * 4.uoffset
32 return Galaxy.Galaxy(tab: Vtable(Bytes: self.tab.Bytes, Pos: x))
33func galaxies*(self: Universe): seq[Galaxy.Galaxy] =
34 let len = self.galaxiesLength
35 for i in countup(0, len - 1):
36 result.add(self.galaxies(i))
37proc UniverseStart*(builder: var Builder) =
38 builder.StartObject(2)
39proc UniverseAddage*(builder: var Builder, age: float64) =
40 builder.PrependSlot(0, age, default(float64))
41proc UniverseAddgalaxies*(builder: var Builder, galaxies: uoffset) =
42 builder.PrependSlot(1, galaxies, default(uoffset))
43proc UniverseStartgalaxiesVector*(builder: var Builder, numElems: uoffset) =
44 builder.StartVector(4, numElems, 4)
45proc UniverseEnd*(builder: var Builder): uoffset =
46 return builder.EndObject()
View as plain text