1#[ MyGame.Example.Monster 2 Automatically generated by the FlatBuffers compiler, do not modify. 3 Or modify. I'm a message, not a cop. 4 5 flatc version: 24.3.25 6 7 Declared by : 8 Rooting type : MyGame.Example.Monster () 9]# 10 11import ../InParentNamespace as MyGame_InParentNamespace 12import Ability as MyGame_Example_Ability 13import Any as MyGame_Example_Any 14import AnyAmbiguousAliases as MyGame_Example_AnyAmbiguousAliases 15import AnyUniqueAliases as MyGame_Example_AnyUniqueAliases 16import Color as MyGame_Example_Color 17import LongEnum as MyGame_Example_LongEnum 18import Race as MyGame_Example_Race 19import Referrable as MyGame_Example_Referrable 20import Stat as MyGame_Example_Stat 21import Test as MyGame_Example_Test 22import Vec3 as MyGame_Example_Vec3 23import flatbuffers 24import std/options 25 26# an example documentation comment: "monster object" 27type Monster* = object of FlatObj 28func pos*(self: Monster): Option[MyGame_Example_Vec3.Vec3] = 29 let o = self.tab.Offset(4) 30 if o != 0: 31 return some(MyGame_Example_Vec3.Vec3(tab: Vtable(Bytes: self.tab.Bytes, Pos: self.tab.Pos + o))) 32func mana*(self: Monster): int16 = 33 let o = self.tab.Offset(6) 34 if o != 0: 35 return Get[int16](self.tab, self.tab.Pos + o) 36 return 150 37func `mana=`*(self: var Monster, n: int16): bool = 38 return self.tab.MutateSlot(6, n) 39func hp*(self: Monster): int16 = 40 let o = self.tab.Offset(8) 41 if o != 0: 42 return Get[int16](self.tab, self.tab.Pos + o) 43 return 100 44func `hp=`*(self: var Monster, n: int16): bool = 45 return self.tab.MutateSlot(8, n) 46func name*(self: Monster): string = 47 let o = self.tab.Offset(10) 48 if o != 0: 49 return self.tab.String(self.tab.Pos + o) 50 return "" 51func inventoryLength*(self: Monster): int = 52 let o = self.tab.Offset(14) 53 if o != 0: 54 return self.tab.VectorLen(o) 55func inventory*(self: Monster, j: int): uint8 = 56 let o = self.tab.Offset(14) 57 if o != 0: 58 var x = self.tab.Vector(o) 59 x += j.uoffset * 1.uoffset 60 return Get[uint8](self.tab, x) 61func inventory*(self: Monster): seq[uint8] = 62 let len = self.inventoryLength 63 for i in countup(0, len - 1): 64 result.add(self.inventory(i)) 65func color*(self: Monster): MyGame_Example_Color.Color = 66 let o = self.tab.Offset(16) 67 if o != 0: 68 return MyGame_Example_Color.Color(Get[uint8](self.tab, self.tab.Pos + o)) 69 return type(result)(8) 70func `color=`*(self: var Monster, n: MyGame_Example_Color.Color): bool = 71 return self.tab.MutateSlot(16, n) 72func testType*(self: Monster): MyGame_Example_Any.Any = 73 let o = self.tab.Offset(18) 74 if o != 0: 75 return MyGame_Example_Any.Any(Get[uint8](self.tab, self.tab.Pos + o)) 76 return type(result)(0) 77func `testType=`*(self: var Monster, n: MyGame_Example_Any.Any): bool = 78 return self.tab.MutateSlot(18, n) 79func test*(self: Monster): Option[Vtable] = 80 let o = self.tab.Offset(20) 81 if o != 0: 82 return some(self.tab.Union(o)) 83func test4Length*(self: Monster): int = 84 let o = self.tab.Offset(22) 85 if o != 0: 86 return self.tab.VectorLen(o) 87func test4*(self: Monster, j: int): MyGame_Example_Test.Test = 88 let o = self.tab.Offset(22) 89 if o != 0: 90 var x = self.tab.Vector(o) 91 x += j.uoffset * 4.uoffset 92 return MyGame_Example_Test.Test(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 93func test4*(self: Monster): seq[MyGame_Example_Test.Test] = 94 let len = self.test4Length 95 for i in countup(0, len - 1): 96 result.add(self.test4(i)) 97func testarrayofstringLength*(self: Monster): int = 98 let o = self.tab.Offset(24) 99 if o != 0: 100 return self.tab.VectorLen(o) 101func testarrayofstring*(self: Monster, j: int): string = 102 let o = self.tab.Offset(24) 103 if o != 0: 104 var x = self.tab.Vector(o) 105 x += j.uoffset * 4.uoffset 106 return self.tab.String(x) 107func testarrayofstring*(self: Monster): seq[string] = 108 let len = self.testarrayofstringLength 109 for i in countup(0, len - 1): 110 result.add(self.testarrayofstring(i)) 111func testarrayoftablesLength*(self: Monster): int = 112 let o = self.tab.Offset(26) 113 if o != 0: 114 return self.tab.VectorLen(o) 115func testarrayoftables*(self: Monster, j: int): Monster = 116 let o = self.tab.Offset(26) 117 if o != 0: 118 var x = self.tab.Vector(o) 119 x += j.uoffset * 4.uoffset 120 return Monster(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 121func testarrayoftables*(self: Monster): seq[Monster] = 122 let len = self.testarrayoftablesLength 123 for i in countup(0, len - 1): 124 result.add(self.testarrayoftables(i)) 125func enemy*(self: Monster): Option[Monster] = 126 let o = self.tab.Offset(28) 127 if o != 0: 128 return some(Monster(tab: Vtable(Bytes: self.tab.Bytes, Pos: self.tab.Pos + o))) 129func testnestedflatbufferLength*(self: Monster): int = 130 let o = self.tab.Offset(30) 131 if o != 0: 132 return self.tab.VectorLen(o) 133func testnestedflatbuffer*(self: Monster, j: int): uint8 = 134 let o = self.tab.Offset(30) 135 if o != 0: 136 var x = self.tab.Vector(o) 137 x += j.uoffset * 1.uoffset 138 return Get[uint8](self.tab, x) 139func testnestedflatbuffer*(self: Monster): seq[uint8] = 140 let len = self.testnestedflatbufferLength 141 for i in countup(0, len - 1): 142 result.add(self.testnestedflatbuffer(i)) 143func testempty*(self: Monster): Option[MyGame_Example_Stat.Stat] = 144 let o = self.tab.Offset(32) 145 if o != 0: 146 return some(MyGame_Example_Stat.Stat(tab: Vtable(Bytes: self.tab.Bytes, Pos: self.tab.Pos + o))) 147func testbool*(self: Monster): bool = 148 let o = self.tab.Offset(34) 149 if o != 0: 150 return Get[bool](self.tab, self.tab.Pos + o) 151 return false 152func `testbool=`*(self: var Monster, n: bool): bool = 153 return self.tab.MutateSlot(34, n) 154func testhashs32Fnv1*(self: Monster): int32 = 155 let o = self.tab.Offset(36) 156 if o != 0: 157 return Get[int32](self.tab, self.tab.Pos + o) 158 return 0 159func `testhashs32Fnv1=`*(self: var Monster, n: int32): bool = 160 return self.tab.MutateSlot(36, n) 161func testhashu32Fnv1*(self: Monster): uint32 = 162 let o = self.tab.Offset(38) 163 if o != 0: 164 return Get[uint32](self.tab, self.tab.Pos + o) 165 return 0 166func `testhashu32Fnv1=`*(self: var Monster, n: uint32): bool = 167 return self.tab.MutateSlot(38, n) 168func testhashs64Fnv1*(self: Monster): int64 = 169 let o = self.tab.Offset(40) 170 if o != 0: 171 return Get[int64](self.tab, self.tab.Pos + o) 172 return 0 173func `testhashs64Fnv1=`*(self: var Monster, n: int64): bool = 174 return self.tab.MutateSlot(40, n) 175func testhashu64Fnv1*(self: Monster): uint64 = 176 let o = self.tab.Offset(42) 177 if o != 0: 178 return Get[uint64](self.tab, self.tab.Pos + o) 179 return 0 180func `testhashu64Fnv1=`*(self: var Monster, n: uint64): bool = 181 return self.tab.MutateSlot(42, n) 182func testhashs32Fnv1a*(self: Monster): int32 = 183 let o = self.tab.Offset(44) 184 if o != 0: 185 return Get[int32](self.tab, self.tab.Pos + o) 186 return 0 187func `testhashs32Fnv1a=`*(self: var Monster, n: int32): bool = 188 return self.tab.MutateSlot(44, n) 189func testhashu32Fnv1a*(self: Monster): uint32 = 190 let o = self.tab.Offset(46) 191 if o != 0: 192 return Get[uint32](self.tab, self.tab.Pos + o) 193 return 0 194func `testhashu32Fnv1a=`*(self: var Monster, n: uint32): bool = 195 return self.tab.MutateSlot(46, n) 196func testhashs64Fnv1a*(self: Monster): int64 = 197 let o = self.tab.Offset(48) 198 if o != 0: 199 return Get[int64](self.tab, self.tab.Pos + o) 200 return 0 201func `testhashs64Fnv1a=`*(self: var Monster, n: int64): bool = 202 return self.tab.MutateSlot(48, n) 203func testhashu64Fnv1a*(self: Monster): uint64 = 204 let o = self.tab.Offset(50) 205 if o != 0: 206 return Get[uint64](self.tab, self.tab.Pos + o) 207 return 0 208func `testhashu64Fnv1a=`*(self: var Monster, n: uint64): bool = 209 return self.tab.MutateSlot(50, n) 210func testarrayofboolsLength*(self: Monster): int = 211 let o = self.tab.Offset(52) 212 if o != 0: 213 return self.tab.VectorLen(o) 214func testarrayofbools*(self: Monster, j: int): bool = 215 let o = self.tab.Offset(52) 216 if o != 0: 217 var x = self.tab.Vector(o) 218 x += j.uoffset * 1.uoffset 219 return Get[bool](self.tab, x) 220func testarrayofbools*(self: Monster): seq[bool] = 221 let len = self.testarrayofboolsLength 222 for i in countup(0, len - 1): 223 result.add(self.testarrayofbools(i)) 224func testf*(self: Monster): float32 = 225 let o = self.tab.Offset(54) 226 if o != 0: 227 return Get[float32](self.tab, self.tab.Pos + o) 228 return 3.14159 229func `testf=`*(self: var Monster, n: float32): bool = 230 return self.tab.MutateSlot(54, n) 231func testf2*(self: Monster): float32 = 232 let o = self.tab.Offset(56) 233 if o != 0: 234 return Get[float32](self.tab, self.tab.Pos + o) 235 return 3.0 236func `testf2=`*(self: var Monster, n: float32): bool = 237 return self.tab.MutateSlot(56, n) 238func testf3*(self: Monster): float32 = 239 let o = self.tab.Offset(58) 240 if o != 0: 241 return Get[float32](self.tab, self.tab.Pos + o) 242 return 0.0 243func `testf3=`*(self: var Monster, n: float32): bool = 244 return self.tab.MutateSlot(58, n) 245func testarrayofstring2Length*(self: Monster): int = 246 let o = self.tab.Offset(60) 247 if o != 0: 248 return self.tab.VectorLen(o) 249func testarrayofstring2*(self: Monster, j: int): string = 250 let o = self.tab.Offset(60) 251 if o != 0: 252 var x = self.tab.Vector(o) 253 x += j.uoffset * 4.uoffset 254 return self.tab.String(x) 255func testarrayofstring2*(self: Monster): seq[string] = 256 let len = self.testarrayofstring2Length 257 for i in countup(0, len - 1): 258 result.add(self.testarrayofstring2(i)) 259func testarrayofsortedstructLength*(self: Monster): int = 260 let o = self.tab.Offset(62) 261 if o != 0: 262 return self.tab.VectorLen(o) 263func testarrayofsortedstruct*(self: Monster, j: int): MyGame_Example_Ability.Ability = 264 let o = self.tab.Offset(62) 265 if o != 0: 266 var x = self.tab.Vector(o) 267 x += j.uoffset * 8.uoffset 268 return MyGame_Example_Ability.Ability(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 269func testarrayofsortedstruct*(self: Monster): seq[MyGame_Example_Ability.Ability] = 270 let len = self.testarrayofsortedstructLength 271 for i in countup(0, len - 1): 272 result.add(self.testarrayofsortedstruct(i)) 273func flexLength*(self: Monster): int = 274 let o = self.tab.Offset(64) 275 if o != 0: 276 return self.tab.VectorLen(o) 277func flex*(self: Monster, j: int): uint8 = 278 let o = self.tab.Offset(64) 279 if o != 0: 280 var x = self.tab.Vector(o) 281 x += j.uoffset * 1.uoffset 282 return Get[uint8](self.tab, x) 283func flex*(self: Monster): seq[uint8] = 284 let len = self.flexLength 285 for i in countup(0, len - 1): 286 result.add(self.flex(i)) 287func test5Length*(self: Monster): int = 288 let o = self.tab.Offset(66) 289 if o != 0: 290 return self.tab.VectorLen(o) 291func test5*(self: Monster, j: int): MyGame_Example_Test.Test = 292 let o = self.tab.Offset(66) 293 if o != 0: 294 var x = self.tab.Vector(o) 295 x += j.uoffset * 4.uoffset 296 return MyGame_Example_Test.Test(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 297func test5*(self: Monster): seq[MyGame_Example_Test.Test] = 298 let len = self.test5Length 299 for i in countup(0, len - 1): 300 result.add(self.test5(i)) 301func vectorOfLongsLength*(self: Monster): int = 302 let o = self.tab.Offset(68) 303 if o != 0: 304 return self.tab.VectorLen(o) 305func vectorOfLongs*(self: Monster, j: int): int64 = 306 let o = self.tab.Offset(68) 307 if o != 0: 308 var x = self.tab.Vector(o) 309 x += j.uoffset * 8.uoffset 310 return Get[int64](self.tab, x) 311func vectorOfLongs*(self: Monster): seq[int64] = 312 let len = self.vectorOfLongsLength 313 for i in countup(0, len - 1): 314 result.add(self.vectorOfLongs(i)) 315func vectorOfDoublesLength*(self: Monster): int = 316 let o = self.tab.Offset(70) 317 if o != 0: 318 return self.tab.VectorLen(o) 319func vectorOfDoubles*(self: Monster, j: int): float64 = 320 let o = self.tab.Offset(70) 321 if o != 0: 322 var x = self.tab.Vector(o) 323 x += j.uoffset * 8.uoffset 324 return Get[float64](self.tab, x) 325func vectorOfDoubles*(self: Monster): seq[float64] = 326 let len = self.vectorOfDoublesLength 327 for i in countup(0, len - 1): 328 result.add(self.vectorOfDoubles(i)) 329func parentNamespaceTest*(self: Monster): Option[MyGame_InParentNamespace.InParentNamespace] = 330 let o = self.tab.Offset(72) 331 if o != 0: 332 return some(MyGame_InParentNamespace.InParentNamespace(tab: Vtable(Bytes: self.tab.Bytes, Pos: self.tab.Pos + o))) 333func vectorOfReferrablesLength*(self: Monster): int = 334 let o = self.tab.Offset(74) 335 if o != 0: 336 return self.tab.VectorLen(o) 337func vectorOfReferrables*(self: Monster, j: int): MyGame_Example_Referrable.Referrable = 338 let o = self.tab.Offset(74) 339 if o != 0: 340 var x = self.tab.Vector(o) 341 x += j.uoffset * 4.uoffset 342 return MyGame_Example_Referrable.Referrable(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 343func vectorOfReferrables*(self: Monster): seq[MyGame_Example_Referrable.Referrable] = 344 let len = self.vectorOfReferrablesLength 345 for i in countup(0, len - 1): 346 result.add(self.vectorOfReferrables(i)) 347func singleWeakReference*(self: Monster): uint64 = 348 let o = self.tab.Offset(76) 349 if o != 0: 350 return Get[uint64](self.tab, self.tab.Pos + o) 351 return 0 352func `singleWeakReference=`*(self: var Monster, n: uint64): bool = 353 return self.tab.MutateSlot(76, n) 354func vectorOfWeakReferencesLength*(self: Monster): int = 355 let o = self.tab.Offset(78) 356 if o != 0: 357 return self.tab.VectorLen(o) 358func vectorOfWeakReferences*(self: Monster, j: int): uint64 = 359 let o = self.tab.Offset(78) 360 if o != 0: 361 var x = self.tab.Vector(o) 362 x += j.uoffset * 8.uoffset 363 return Get[uint64](self.tab, x) 364func vectorOfWeakReferences*(self: Monster): seq[uint64] = 365 let len = self.vectorOfWeakReferencesLength 366 for i in countup(0, len - 1): 367 result.add(self.vectorOfWeakReferences(i)) 368func vectorOfStrongReferrablesLength*(self: Monster): int = 369 let o = self.tab.Offset(80) 370 if o != 0: 371 return self.tab.VectorLen(o) 372func vectorOfStrongReferrables*(self: Monster, j: int): MyGame_Example_Referrable.Referrable = 373 let o = self.tab.Offset(80) 374 if o != 0: 375 var x = self.tab.Vector(o) 376 x += j.uoffset * 4.uoffset 377 return MyGame_Example_Referrable.Referrable(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 378func vectorOfStrongReferrables*(self: Monster): seq[MyGame_Example_Referrable.Referrable] = 379 let len = self.vectorOfStrongReferrablesLength 380 for i in countup(0, len - 1): 381 result.add(self.vectorOfStrongReferrables(i)) 382func coOwningReference*(self: Monster): uint64 = 383 let o = self.tab.Offset(82) 384 if o != 0: 385 return Get[uint64](self.tab, self.tab.Pos + o) 386 return 0 387func `coOwningReference=`*(self: var Monster, n: uint64): bool = 388 return self.tab.MutateSlot(82, n) 389func vectorOfCoOwningReferencesLength*(self: Monster): int = 390 let o = self.tab.Offset(84) 391 if o != 0: 392 return self.tab.VectorLen(o) 393func vectorOfCoOwningReferences*(self: Monster, j: int): uint64 = 394 let o = self.tab.Offset(84) 395 if o != 0: 396 var x = self.tab.Vector(o) 397 x += j.uoffset * 8.uoffset 398 return Get[uint64](self.tab, x) 399func vectorOfCoOwningReferences*(self: Monster): seq[uint64] = 400 let len = self.vectorOfCoOwningReferencesLength 401 for i in countup(0, len - 1): 402 result.add(self.vectorOfCoOwningReferences(i)) 403func nonOwningReference*(self: Monster): uint64 = 404 let o = self.tab.Offset(86) 405 if o != 0: 406 return Get[uint64](self.tab, self.tab.Pos + o) 407 return 0 408func `nonOwningReference=`*(self: var Monster, n: uint64): bool = 409 return self.tab.MutateSlot(86, n) 410func vectorOfNonOwningReferencesLength*(self: Monster): int = 411 let o = self.tab.Offset(88) 412 if o != 0: 413 return self.tab.VectorLen(o) 414func vectorOfNonOwningReferences*(self: Monster, j: int): uint64 = 415 let o = self.tab.Offset(88) 416 if o != 0: 417 var x = self.tab.Vector(o) 418 x += j.uoffset * 8.uoffset 419 return Get[uint64](self.tab, x) 420func vectorOfNonOwningReferences*(self: Monster): seq[uint64] = 421 let len = self.vectorOfNonOwningReferencesLength 422 for i in countup(0, len - 1): 423 result.add(self.vectorOfNonOwningReferences(i)) 424func anyUniqueType*(self: Monster): MyGame_Example_AnyUniqueAliases.AnyUniqueAliases = 425 let o = self.tab.Offset(90) 426 if o != 0: 427 return MyGame_Example_AnyUniqueAliases.AnyUniqueAliases(Get[uint8](self.tab, self.tab.Pos + o)) 428 return type(result)(0) 429func `anyUniqueType=`*(self: var Monster, n: MyGame_Example_AnyUniqueAliases.AnyUniqueAliases): bool = 430 return self.tab.MutateSlot(90, n) 431func anyUnique*(self: Monster): Option[Vtable] = 432 let o = self.tab.Offset(92) 433 if o != 0: 434 return some(self.tab.Union(o)) 435func anyAmbiguousType*(self: Monster): MyGame_Example_AnyAmbiguousAliases.AnyAmbiguousAliases = 436 let o = self.tab.Offset(94) 437 if o != 0: 438 return MyGame_Example_AnyAmbiguousAliases.AnyAmbiguousAliases(Get[uint8](self.tab, self.tab.Pos + o)) 439 return type(result)(0) 440func `anyAmbiguousType=`*(self: var Monster, n: MyGame_Example_AnyAmbiguousAliases.AnyAmbiguousAliases): bool = 441 return self.tab.MutateSlot(94, n) 442func anyAmbiguous*(self: Monster): Option[Vtable] = 443 let o = self.tab.Offset(96) 444 if o != 0: 445 return some(self.tab.Union(o)) 446func vectorOfEnumsLength*(self: Monster): int = 447 let o = self.tab.Offset(98) 448 if o != 0: 449 return self.tab.VectorLen(o) 450func vectorOfEnums*(self: Monster, j: int): MyGame_Example_Color.Color = 451 let o = self.tab.Offset(98) 452 if o != 0: 453 var x = self.tab.Vector(o) 454 x += j.uoffset * 1.uoffset 455 return MyGame_Example_Color.Color(Get[uint8](self.tab, x)) 456func vectorOfEnums*(self: Monster): seq[MyGame_Example_Color.Color] = 457 let len = self.vectorOfEnumsLength 458 for i in countup(0, len - 1): 459 result.add(self.vectorOfEnums(i)) 460func signedEnum*(self: Monster): MyGame_Example_Race.Race = 461 let o = self.tab.Offset(100) 462 if o != 0: 463 return MyGame_Example_Race.Race(Get[int8](self.tab, self.tab.Pos + o)) 464 return type(result)(-1) 465func `signedEnum=`*(self: var Monster, n: MyGame_Example_Race.Race): bool = 466 return self.tab.MutateSlot(100, n) 467func testrequirednestedflatbufferLength*(self: Monster): int = 468 let o = self.tab.Offset(102) 469 if o != 0: 470 return self.tab.VectorLen(o) 471func testrequirednestedflatbuffer*(self: Monster, j: int): uint8 = 472 let o = self.tab.Offset(102) 473 if o != 0: 474 var x = self.tab.Vector(o) 475 x += j.uoffset * 1.uoffset 476 return Get[uint8](self.tab, x) 477func testrequirednestedflatbuffer*(self: Monster): seq[uint8] = 478 let len = self.testrequirednestedflatbufferLength 479 for i in countup(0, len - 1): 480 result.add(self.testrequirednestedflatbuffer(i)) 481func scalarKeySortedTablesLength*(self: Monster): int = 482 let o = self.tab.Offset(104) 483 if o != 0: 484 return self.tab.VectorLen(o) 485func scalarKeySortedTables*(self: Monster, j: int): MyGame_Example_Stat.Stat = 486 let o = self.tab.Offset(104) 487 if o != 0: 488 var x = self.tab.Vector(o) 489 x += j.uoffset * 4.uoffset 490 return MyGame_Example_Stat.Stat(tab: Vtable(Bytes: self.tab.Bytes, Pos: x)) 491func scalarKeySortedTables*(self: Monster): seq[MyGame_Example_Stat.Stat] = 492 let len = self.scalarKeySortedTablesLength 493 for i in countup(0, len - 1): 494 result.add(self.scalarKeySortedTables(i)) 495func nativeInline*(self: Monster): Option[MyGame_Example_Test.Test] = 496 let o = self.tab.Offset(106) 497 if o != 0: 498 return some(MyGame_Example_Test.Test(tab: Vtable(Bytes: self.tab.Bytes, Pos: self.tab.Pos + o))) 499func longEnumNonEnumDefault*(self: Monster): MyGame_Example_LongEnum.LongEnum = 500 let o = self.tab.Offset(108) 501 if o != 0: 502 return MyGame_Example_LongEnum.LongEnum(Get[uint64](self.tab, self.tab.Pos + o)) 503 return type(result)(0) 504func `longEnumNonEnumDefault=`*(self: var Monster, n: MyGame_Example_LongEnum.LongEnum): bool = 505 return self.tab.MutateSlot(108, n) 506func longEnumNormalDefault*(self: Monster): MyGame_Example_LongEnum.LongEnum = 507 let o = self.tab.Offset(110) 508 if o != 0: 509 return MyGame_Example_LongEnum.LongEnum(Get[uint64](self.tab, self.tab.Pos + o)) 510 return type(result)(2) 511func `longEnumNormalDefault=`*(self: var Monster, n: MyGame_Example_LongEnum.LongEnum): bool = 512 return self.tab.MutateSlot(110, n) 513func nanDefault*(self: Monster): float32 = 514 let o = self.tab.Offset(112) 515 if o != 0: 516 return Get[float32](self.tab, self.tab.Pos + o) 517 return NaN 518func `nanDefault=`*(self: var Monster, n: float32): bool = 519 return self.tab.MutateSlot(112, n) 520func infDefault*(self: Monster): float32 = 521 let o = self.tab.Offset(114) 522 if o != 0: 523 return Get[float32](self.tab, self.tab.Pos + o) 524 return Inf 525func `infDefault=`*(self: var Monster, n: float32): bool = 526 return self.tab.MutateSlot(114, n) 527func positiveInfDefault*(self: Monster): float32 = 528 let o = self.tab.Offset(116) 529 if o != 0: 530 return Get[float32](self.tab, self.tab.Pos + o) 531 return Inf 532func `positiveInfDefault=`*(self: var Monster, n: float32): bool = 533 return self.tab.MutateSlot(116, n) 534func infinityDefault*(self: Monster): float32 = 535 let o = self.tab.Offset(118) 536 if o != 0: 537 return Get[float32](self.tab, self.tab.Pos + o) 538 return Inf 539func `infinityDefault=`*(self: var Monster, n: float32): bool = 540 return self.tab.MutateSlot(118, n) 541func positiveInfinityDefault*(self: Monster): float32 = 542 let o = self.tab.Offset(120) 543 if o != 0: 544 return Get[float32](self.tab, self.tab.Pos + o) 545 return Inf 546func `positiveInfinityDefault=`*(self: var Monster, n: float32): bool = 547 return self.tab.MutateSlot(120, n) 548func negativeInfDefault*(self: Monster): float32 = 549 let o = self.tab.Offset(122) 550 if o != 0: 551 return Get[float32](self.tab, self.tab.Pos + o) 552 return -Inf 553func `negativeInfDefault=`*(self: var Monster, n: float32): bool = 554 return self.tab.MutateSlot(122, n) 555func negativeInfinityDefault*(self: Monster): float32 = 556 let o = self.tab.Offset(124) 557 if o != 0: 558 return Get[float32](self.tab, self.tab.Pos + o) 559 return -Inf 560func `negativeInfinityDefault=`*(self: var Monster, n: float32): bool = 561 return self.tab.MutateSlot(124, n) 562func doubleInfDefault*(self: Monster): float64 = 563 let o = self.tab.Offset(126) 564 if o != 0: 565 return Get[float64](self.tab, self.tab.Pos + o) 566 return Inf 567func `doubleInfDefault=`*(self: var Monster, n: float64): bool = 568 return self.tab.MutateSlot(126, n) 569proc MonsterStart*(builder: var Builder) = 570 builder.StartObject(62) 571proc MonsterAddpos*(builder: var Builder, pos: uoffset) = 572 builder.PrependStructSlot(0, pos, default(uoffset)) 573proc MonsterAddmana*(builder: var Builder, mana: int16) = 574 builder.PrependSlot(1, mana, default(int16)) 575proc MonsterAddhp*(builder: var Builder, hp: int16) = 576 builder.PrependSlot(2, hp, default(int16)) 577proc MonsterAddname*(builder: var Builder, name: uoffset) = 578 builder.PrependSlot(3, name, default(uoffset)) 579proc MonsterAddinventory*(builder: var Builder, inventory: uoffset) = 580 builder.PrependSlot(5, inventory, default(uoffset)) 581proc MonsterStartinventoryVector*(builder: var Builder, numElems: uoffset) = 582 builder.StartVector(1, numElems, 1) 583proc MonsterAddcolor*(builder: var Builder, color: uint8) = 584 builder.PrependSlot(6, color, default(uint8)) 585proc MonsterAddtestType*(builder: var Builder, testType: uint8) = 586 builder.PrependSlot(7, testType, default(uint8)) 587proc MonsterAddtest*(builder: var Builder, test: uoffset) = 588 builder.PrependSlot(8, test, default(uoffset)) 589proc MonsterAddtest4*(builder: var Builder, test4: uoffset) = 590 builder.PrependSlot(9, test4, default(uoffset)) 591proc MonsterStarttest4Vector*(builder: var Builder, numElems: uoffset) = 592 builder.StartVector(4, numElems, 2) 593proc MonsterAddtestarrayofstring*(builder: var Builder, testarrayofstring: uoffset) = 594 builder.PrependSlot(10, testarrayofstring, default(uoffset)) 595proc MonsterStarttestarrayofstringVector*(builder: var Builder, numElems: uoffset) = 596 builder.StartVector(4, numElems, 4) 597proc MonsterAddtestarrayoftables*(builder: var Builder, testarrayoftables: uoffset) = 598 builder.PrependSlot(11, testarrayoftables, default(uoffset)) 599proc MonsterStarttestarrayoftablesVector*(builder: var Builder, numElems: uoffset) = 600 builder.StartVector(4, numElems, 4) 601proc MonsterAddenemy*(builder: var Builder, enemy: uoffset) = 602 builder.PrependStructSlot(12, enemy, default(uoffset)) 603proc MonsterAddtestnestedflatbuffer*(builder: var Builder, testnestedflatbuffer: uoffset) = 604 builder.PrependSlot(13, testnestedflatbuffer, default(uoffset)) 605proc MonsterStarttestnestedflatbufferVector*(builder: var Builder, numElems: uoffset) = 606 builder.StartVector(1, numElems, 1) 607proc MonsterAddtestempty*(builder: var Builder, testempty: uoffset) = 608 builder.PrependStructSlot(14, testempty, default(uoffset)) 609proc MonsterAddtestbool*(builder: var Builder, testbool: bool) = 610 builder.PrependSlot(15, testbool, default(bool)) 611proc MonsterAddtesthashs32Fnv1*(builder: var Builder, testhashs32Fnv1: int32) = 612 builder.PrependSlot(16, testhashs32Fnv1, default(int32)) 613proc MonsterAddtesthashu32Fnv1*(builder: var Builder, testhashu32Fnv1: uint32) = 614 builder.PrependSlot(17, testhashu32Fnv1, default(uint32)) 615proc MonsterAddtesthashs64Fnv1*(builder: var Builder, testhashs64Fnv1: int64) = 616 builder.PrependSlot(18, testhashs64Fnv1, default(int64)) 617proc MonsterAddtesthashu64Fnv1*(builder: var Builder, testhashu64Fnv1: uint64) = 618 builder.PrependSlot(19, testhashu64Fnv1, default(uint64)) 619proc MonsterAddtesthashs32Fnv1a*(builder: var Builder, testhashs32Fnv1a: int32) = 620 builder.PrependSlot(20, testhashs32Fnv1a, default(int32)) 621proc MonsterAddtesthashu32Fnv1a*(builder: var Builder, testhashu32Fnv1a: uint32) = 622 builder.PrependSlot(21, testhashu32Fnv1a, default(uint32)) 623proc MonsterAddtesthashs64Fnv1a*(builder: var Builder, testhashs64Fnv1a: int64) = 624 builder.PrependSlot(22, testhashs64Fnv1a, default(int64)) 625proc MonsterAddtesthashu64Fnv1a*(builder: var Builder, testhashu64Fnv1a: uint64) = 626 builder.PrependSlot(23, testhashu64Fnv1a, default(uint64)) 627proc MonsterAddtestarrayofbools*(builder: var Builder, testarrayofbools: uoffset) = 628 builder.PrependSlot(24, testarrayofbools, default(uoffset)) 629proc MonsterStarttestarrayofboolsVector*(builder: var Builder, numElems: uoffset) = 630 builder.StartVector(1, numElems, 1) 631proc MonsterAddtestf*(builder: var Builder, testf: float32) = 632 builder.PrependSlot(25, testf, default(float32)) 633proc MonsterAddtestf2*(builder: var Builder, testf2: float32) = 634 builder.PrependSlot(26, testf2, default(float32)) 635proc MonsterAddtestf3*(builder: var Builder, testf3: float32) = 636 builder.PrependSlot(27, testf3, default(float32)) 637proc MonsterAddtestarrayofstring2*(builder: var Builder, testarrayofstring2: uoffset) = 638 builder.PrependSlot(28, testarrayofstring2, default(uoffset)) 639proc MonsterStarttestarrayofstring2Vector*(builder: var Builder, numElems: uoffset) = 640 builder.StartVector(4, numElems, 4) 641proc MonsterAddtestarrayofsortedstruct*(builder: var Builder, testarrayofsortedstruct: uoffset) = 642 builder.PrependSlot(29, testarrayofsortedstruct, default(uoffset)) 643proc MonsterStarttestarrayofsortedstructVector*(builder: var Builder, numElems: uoffset) = 644 builder.StartVector(8, numElems, 4) 645proc MonsterAddflex*(builder: var Builder, flex: uoffset) = 646 builder.PrependSlot(30, flex, default(uoffset)) 647proc MonsterStartflexVector*(builder: var Builder, numElems: uoffset) = 648 builder.StartVector(1, numElems, 1) 649proc MonsterAddtest5*(builder: var Builder, test5: uoffset) = 650 builder.PrependSlot(31, test5, default(uoffset)) 651proc MonsterStarttest5Vector*(builder: var Builder, numElems: uoffset) = 652 builder.StartVector(4, numElems, 2) 653proc MonsterAddvectorOfLongs*(builder: var Builder, vectorOfLongs: uoffset) = 654 builder.PrependSlot(32, vectorOfLongs, default(uoffset)) 655proc MonsterStartvectorOfLongsVector*(builder: var Builder, numElems: uoffset) = 656 builder.StartVector(8, numElems, 8) 657proc MonsterAddvectorOfDoubles*(builder: var Builder, vectorOfDoubles: uoffset) = 658 builder.PrependSlot(33, vectorOfDoubles, default(uoffset)) 659proc MonsterStartvectorOfDoublesVector*(builder: var Builder, numElems: uoffset) = 660 builder.StartVector(8, numElems, 8) 661proc MonsterAddparentNamespaceTest*(builder: var Builder, parentNamespaceTest: uoffset) = 662 builder.PrependStructSlot(34, parentNamespaceTest, default(uoffset)) 663proc MonsterAddvectorOfReferrables*(builder: var Builder, vectorOfReferrables: uoffset) = 664 builder.PrependSlot(35, vectorOfReferrables, default(uoffset)) 665proc MonsterStartvectorOfReferrablesVector*(builder: var Builder, numElems: uoffset) = 666 builder.StartVector(4, numElems, 4) 667proc MonsterAddsingleWeakReference*(builder: var Builder, singleWeakReference: uint64) = 668 builder.PrependSlot(36, singleWeakReference, default(uint64)) 669proc MonsterAddvectorOfWeakReferences*(builder: var Builder, vectorOfWeakReferences: uoffset) = 670 builder.PrependSlot(37, vectorOfWeakReferences, default(uoffset)) 671proc MonsterStartvectorOfWeakReferencesVector*(builder: var Builder, numElems: uoffset) = 672 builder.StartVector(8, numElems, 8) 673proc MonsterAddvectorOfStrongReferrables*(builder: var Builder, vectorOfStrongReferrables: uoffset) = 674 builder.PrependSlot(38, vectorOfStrongReferrables, default(uoffset)) 675proc MonsterStartvectorOfStrongReferrablesVector*(builder: var Builder, numElems: uoffset) = 676 builder.StartVector(4, numElems, 4) 677proc MonsterAddcoOwningReference*(builder: var Builder, coOwningReference: uint64) = 678 builder.PrependSlot(39, coOwningReference, default(uint64)) 679proc MonsterAddvectorOfCoOwningReferences*(builder: var Builder, vectorOfCoOwningReferences: uoffset) = 680 builder.PrependSlot(40, vectorOfCoOwningReferences, default(uoffset)) 681proc MonsterStartvectorOfCoOwningReferencesVector*(builder: var Builder, numElems: uoffset) = 682 builder.StartVector(8, numElems, 8) 683proc MonsterAddnonOwningReference*(builder: var Builder, nonOwningReference: uint64) = 684 builder.PrependSlot(41, nonOwningReference, default(uint64)) 685proc MonsterAddvectorOfNonOwningReferences*(builder: var Builder, vectorOfNonOwningReferences: uoffset) = 686 builder.PrependSlot(42, vectorOfNonOwningReferences, default(uoffset)) 687proc MonsterStartvectorOfNonOwningReferencesVector*(builder: var Builder, numElems: uoffset) = 688 builder.StartVector(8, numElems, 8) 689proc MonsterAddanyUniqueType*(builder: var Builder, anyUniqueType: uint8) = 690 builder.PrependSlot(43, anyUniqueType, default(uint8)) 691proc MonsterAddanyUnique*(builder: var Builder, anyUnique: uoffset) = 692 builder.PrependSlot(44, anyUnique, default(uoffset)) 693proc MonsterAddanyAmbiguousType*(builder: var Builder, anyAmbiguousType: uint8) = 694 builder.PrependSlot(45, anyAmbiguousType, default(uint8)) 695proc MonsterAddanyAmbiguous*(builder: var Builder, anyAmbiguous: uoffset) = 696 builder.PrependSlot(46, anyAmbiguous, default(uoffset)) 697proc MonsterAddvectorOfEnums*(builder: var Builder, vectorOfEnums: uoffset) = 698 builder.PrependSlot(47, vectorOfEnums, default(uoffset)) 699proc MonsterStartvectorOfEnumsVector*(builder: var Builder, numElems: uoffset) = 700 builder.StartVector(1, numElems, 1) 701proc MonsterAddsignedEnum*(builder: var Builder, signedEnum: int8) = 702 builder.PrependSlot(48, signedEnum, default(int8)) 703proc MonsterAddtestrequirednestedflatbuffer*(builder: var Builder, testrequirednestedflatbuffer: uoffset) = 704 builder.PrependSlot(49, testrequirednestedflatbuffer, default(uoffset)) 705proc MonsterStarttestrequirednestedflatbufferVector*(builder: var Builder, numElems: uoffset) = 706 builder.StartVector(1, numElems, 1) 707proc MonsterAddscalarKeySortedTables*(builder: var Builder, scalarKeySortedTables: uoffset) = 708 builder.PrependSlot(50, scalarKeySortedTables, default(uoffset)) 709proc MonsterStartscalarKeySortedTablesVector*(builder: var Builder, numElems: uoffset) = 710 builder.StartVector(4, numElems, 4) 711proc MonsterAddnativeInline*(builder: var Builder, nativeInline: uoffset) = 712 builder.PrependStructSlot(51, nativeInline, default(uoffset)) 713proc MonsterAddlongEnumNonEnumDefault*(builder: var Builder, longEnumNonEnumDefault: uint64) = 714 builder.PrependSlot(52, longEnumNonEnumDefault, default(uint64)) 715proc MonsterAddlongEnumNormalDefault*(builder: var Builder, longEnumNormalDefault: uint64) = 716 builder.PrependSlot(53, longEnumNormalDefault, default(uint64)) 717proc MonsterAddnanDefault*(builder: var Builder, nanDefault: float32) = 718 builder.PrependSlot(54, nanDefault, default(float32)) 719proc MonsterAddinfDefault*(builder: var Builder, infDefault: float32) = 720 builder.PrependSlot(55, infDefault, default(float32)) 721proc MonsterAddpositiveInfDefault*(builder: var Builder, positiveInfDefault: float32) = 722 builder.PrependSlot(56, positiveInfDefault, default(float32)) 723proc MonsterAddinfinityDefault*(builder: var Builder, infinityDefault: float32) = 724 builder.PrependSlot(57, infinityDefault, default(float32)) 725proc MonsterAddpositiveInfinityDefault*(builder: var Builder, positiveInfinityDefault: float32) = 726 builder.PrependSlot(58, positiveInfinityDefault, default(float32)) 727proc MonsterAddnegativeInfDefault*(builder: var Builder, negativeInfDefault: float32) = 728 builder.PrependSlot(59, negativeInfDefault, default(float32)) 729proc MonsterAddnegativeInfinityDefault*(builder: var Builder, negativeInfinityDefault: float32) = 730 builder.PrependSlot(60, negativeInfinityDefault, default(float32)) 731proc MonsterAdddoubleInfDefault*(builder: var Builder, doubleInfDefault: float64) = 732 builder.PrependSlot(61, doubleInfDefault, default(float64)) 733proc MonsterEnd*(builder: var Builder): uoffset = 734 return builder.EndObject() 735