summaryrefslogtreecommitdiff
path: root/goldens/nim/Universe.nim
diff options
context:
space:
mode:
Diffstat (limited to 'goldens/nim/Universe.nim')
-rw-r--r--goldens/nim/Universe.nim46
1 files changed, 46 insertions, 0 deletions
diff --git a/goldens/nim/Universe.nim b/goldens/nim/Universe.nim
new file mode 100644
index 00000000..3a4e43d2
--- /dev/null
+++ b/goldens/nim/Universe.nim
@@ -0,0 +1,46 @@
+#[ Universe
+ Automatically generated by the FlatBuffers compiler, do not modify.
+ Or modify. I'm a message, not a cop.
+
+ flatc version: 23.5.9
+
+ Declared by : //basic.fbs
+ Rooting type : Universe (//basic.fbs)
+]#
+
+import Galaxy as Galaxy
+import flatbuffers
+import std/options
+
+type Universe* = object of FlatObj
+func age*(self: Universe): float64 =
+ let o = self.tab.Offset(4)
+ if o != 0:
+ return Get[float64](self.tab, self.tab.Pos + o)
+ return 0.0
+func `age=`*(self: var Universe, n: float64): bool =
+ return self.tab.MutateSlot(4, n)
+func galaxiesLength*(self: Universe): int =
+ let o = self.tab.Offset(6)
+ if o != 0:
+ return self.tab.VectorLen(o)
+func galaxies*(self: Universe, j: int): Galaxy.Galaxy =
+ let o = self.tab.Offset(6)
+ if o != 0:
+ var x = self.tab.Vector(o)
+ x += j.uoffset * 4.uoffset
+ return Galaxy.Galaxy(tab: Vtable(Bytes: self.tab.Bytes, Pos: x))
+func galaxies*(self: Universe): seq[Galaxy.Galaxy] =
+ let len = self.galaxiesLength
+ for i in countup(0, len - 1):
+ result.add(self.galaxies(i))
+proc UniverseStart*(builder: var Builder) =
+ builder.StartObject(2)
+proc UniverseAddage*(builder: var Builder, age: float64) =
+ builder.PrependSlot(0, age, default(float64))
+proc UniverseAddgalaxies*(builder: var Builder, galaxies: uoffset) =
+ builder.PrependSlot(1, galaxies, default(uoffset))
+proc UniverseStartgalaxiesVector*(builder: var Builder, numElems: uoffset) =
+ builder.StartVector(4, numElems, 4)
+proc UniverseEnd*(builder: var Builder): uoffset =
+ return builder.EndObject()