blob: 12ee70ac4a6029d4b2f7f8b4e14cd73503eba1f2 [file] [log] [blame]
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001// automatically generated by the FlatBuffers compiler, do not modify
2
3package MyGame.Example
4
5import java.nio.*
6import kotlin.math.sign
7import com.google.flatbuffers.*
8
9/**
Austin Schuh272c6132020-11-14 16:37:52 -080010 * an example documentation comment: "monster object"
Austin Schuhe89fa2d2019-08-14 20:24:23 -070011 */
12@Suppress("unused")
Austin Schuhe89fa2d2019-08-14 20:24:23 -070013class Monster : Table() {
14
15 fun __init(_i: Int, _bb: ByteBuffer) {
16 __reset(_i, _bb)
17 }
18 fun __assign(_i: Int, _bb: ByteBuffer) : Monster {
19 __init(_i, _bb)
20 return this
21 }
22 val pos : MyGame.Example.Vec3? get() = pos(MyGame.Example.Vec3())
23 fun pos(obj: MyGame.Example.Vec3) : MyGame.Example.Vec3? {
24 val o = __offset(4)
25 return if (o != 0) {
26 obj.__assign(o + bb_pos, bb)
27 } else {
28 null
29 }
30 }
31 val mana : Short
32 get() {
33 val o = __offset(6)
34 return if(o != 0) bb.getShort(o + bb_pos) else 150
35 }
36 fun mutateMana(mana: Short) : Boolean {
37 val o = __offset(6)
38 return if (o != 0) {
39 bb.putShort(o + bb_pos, mana)
40 true
41 } else {
42 false
43 }
44 }
45 val hp : Short
46 get() {
47 val o = __offset(8)
48 return if(o != 0) bb.getShort(o + bb_pos) else 100
49 }
50 fun mutateHp(hp: Short) : Boolean {
51 val o = __offset(8)
52 return if (o != 0) {
53 bb.putShort(o + bb_pos, hp)
54 true
55 } else {
56 false
57 }
58 }
59 val name : String?
60 get() {
61 val o = __offset(10)
62 return if (o != 0) __string(o + bb_pos) else null
63 }
64 val nameAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(10, 1)
65 fun nameInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 10, 1)
66 fun inventory(j: Int) : UByte {
67 val o = __offset(14)
68 return if (o != 0) {
69 bb.get(__vector(o) + j * 1).toUByte()
70 } else {
71 0u
72 }
73 }
74 val inventoryLength : Int
75 get() {
76 val o = __offset(14); return if (o != 0) __vector_len(o) else 0
77 }
78 val inventoryAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(14, 1)
79 fun inventoryInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 14, 1)
80 fun mutateInventory(j: Int, inventory: UByte) : Boolean {
81 val o = __offset(14)
82 return if (o != 0) {
83 bb.put(__vector(o) + j * 1, inventory.toByte())
84 true
85 } else {
86 false
87 }
88 }
89 val color : UByte
90 get() {
91 val o = __offset(16)
92 return if(o != 0) bb.get(o + bb_pos).toUByte() else 8u
93 }
94 fun mutateColor(color: UByte) : Boolean {
95 val o = __offset(16)
96 return if (o != 0) {
97 bb.put(o + bb_pos, color.toByte())
98 true
99 } else {
100 false
101 }
102 }
103 val testType : UByte
104 get() {
105 val o = __offset(18)
106 return if(o != 0) bb.get(o + bb_pos).toUByte() else 0u
107 }
108 fun mutateTestType(testType: UByte) : Boolean {
109 val o = __offset(18)
110 return if (o != 0) {
111 bb.put(o + bb_pos, testType.toByte())
112 true
113 } else {
114 false
115 }
116 }
117 fun test(obj: Table) : Table? {
Austin Schuh272c6132020-11-14 16:37:52 -0800118 val o = __offset(20); return if (o != 0) __union(obj, o + bb_pos) else null
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700119 }
120 fun test4(j: Int) : MyGame.Example.Test? = test4(MyGame.Example.Test(), j)
121 fun test4(obj: MyGame.Example.Test, j: Int) : MyGame.Example.Test? {
122 val o = __offset(22)
123 return if (o != 0) {
124 obj.__assign(__vector(o) + j * 4, bb)
125 } else {
126 null
127 }
128 }
129 val test4Length : Int
130 get() {
131 val o = __offset(22); return if (o != 0) __vector_len(o) else 0
132 }
133 fun testarrayofstring(j: Int) : String? {
134 val o = __offset(24)
135 return if (o != 0) {
136 __string(__vector(o) + j * 4)
137 } else {
138 null
139 }
140 }
141 val testarrayofstringLength : Int
142 get() {
143 val o = __offset(24); return if (o != 0) __vector_len(o) else 0
144 }
145 /**
146 * an example documentation comment: this will end up in the generated code
147 * multiline too
148 */
149 fun testarrayoftables(j: Int) : MyGame.Example.Monster? = testarrayoftables(MyGame.Example.Monster(), j)
150 fun testarrayoftables(obj: MyGame.Example.Monster, j: Int) : MyGame.Example.Monster? {
151 val o = __offset(26)
152 return if (o != 0) {
153 obj.__assign(__indirect(__vector(o) + j * 4), bb)
154 } else {
155 null
156 }
157 }
158 val testarrayoftablesLength : Int
159 get() {
160 val o = __offset(26); return if (o != 0) __vector_len(o) else 0
161 }
162 fun testarrayoftablesByKey(key: String) : MyGame.Example.Monster? {
163 val o = __offset(26)
164 return if (o != 0) {
165 MyGame.Example.Monster.__lookup_by_key(null, __vector(o), key, bb)
166 } else {
167 null
168 }
169 }
170 fun testarrayoftablesByKey(obj: MyGame.Example.Monster, key: String) : MyGame.Example.Monster? {
171 val o = __offset(26)
172 return if (o != 0) {
173 MyGame.Example.Monster.__lookup_by_key(obj, __vector(o), key, bb)
174 } else {
175 null
176 }
177 }
178 val enemy : MyGame.Example.Monster? get() = enemy(MyGame.Example.Monster())
179 fun enemy(obj: MyGame.Example.Monster) : MyGame.Example.Monster? {
180 val o = __offset(28)
181 return if (o != 0) {
182 obj.__assign(__indirect(o + bb_pos), bb)
183 } else {
184 null
185 }
186 }
187 fun testnestedflatbuffer(j: Int) : UByte {
188 val o = __offset(30)
189 return if (o != 0) {
190 bb.get(__vector(o) + j * 1).toUByte()
191 } else {
192 0u
193 }
194 }
195 val testnestedflatbufferLength : Int
196 get() {
197 val o = __offset(30); return if (o != 0) __vector_len(o) else 0
198 }
199 val testnestedflatbufferAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(30, 1)
200 fun testnestedflatbufferInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 30, 1)
201 val testnestedflatbufferAsMonster : MyGame.Example.Monster? get() = testnestedflatbufferAsMonster(MyGame.Example.Monster())
202 fun testnestedflatbufferAsMonster(obj: MyGame.Example.Monster) : MyGame.Example.Monster? {
203 val o = __offset(30)
204 return if (o != 0) {
205 obj.__assign(__indirect(__vector(o)), bb)
206 } else {
207 null
208 }
209 }
210 fun mutateTestnestedflatbuffer(j: Int, testnestedflatbuffer: UByte) : Boolean {
211 val o = __offset(30)
212 return if (o != 0) {
213 bb.put(__vector(o) + j * 1, testnestedflatbuffer.toByte())
214 true
215 } else {
216 false
217 }
218 }
219 val testempty : MyGame.Example.Stat? get() = testempty(MyGame.Example.Stat())
220 fun testempty(obj: MyGame.Example.Stat) : MyGame.Example.Stat? {
221 val o = __offset(32)
222 return if (o != 0) {
223 obj.__assign(__indirect(o + bb_pos), bb)
224 } else {
225 null
226 }
227 }
228 val testbool : Boolean
229 get() {
230 val o = __offset(34)
231 return if(o != 0) 0.toByte() != bb.get(o + bb_pos) else false
232 }
233 fun mutateTestbool(testbool: Boolean) : Boolean {
234 val o = __offset(34)
235 return if (o != 0) {
236 bb.put(o + bb_pos, (if(testbool) 1 else 0).toByte())
237 true
238 } else {
239 false
240 }
241 }
242 val testhashs32Fnv1 : Int
243 get() {
244 val o = __offset(36)
245 return if(o != 0) bb.getInt(o + bb_pos) else 0
246 }
247 fun mutateTesthashs32Fnv1(testhashs32Fnv1: Int) : Boolean {
248 val o = __offset(36)
249 return if (o != 0) {
250 bb.putInt(o + bb_pos, testhashs32Fnv1)
251 true
252 } else {
253 false
254 }
255 }
256 val testhashu32Fnv1 : UInt
257 get() {
258 val o = __offset(38)
259 return if(o != 0) bb.getInt(o + bb_pos).toUInt() else 0u
260 }
261 fun mutateTesthashu32Fnv1(testhashu32Fnv1: UInt) : Boolean {
262 val o = __offset(38)
263 return if (o != 0) {
264 bb.putInt(o + bb_pos, testhashu32Fnv1.toInt())
265 true
266 } else {
267 false
268 }
269 }
270 val testhashs64Fnv1 : Long
271 get() {
272 val o = __offset(40)
273 return if(o != 0) bb.getLong(o + bb_pos) else 0L
274 }
275 fun mutateTesthashs64Fnv1(testhashs64Fnv1: Long) : Boolean {
276 val o = __offset(40)
277 return if (o != 0) {
278 bb.putLong(o + bb_pos, testhashs64Fnv1)
279 true
280 } else {
281 false
282 }
283 }
284 val testhashu64Fnv1 : ULong
285 get() {
286 val o = __offset(42)
287 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
288 }
289 fun mutateTesthashu64Fnv1(testhashu64Fnv1: ULong) : Boolean {
290 val o = __offset(42)
291 return if (o != 0) {
292 bb.putLong(o + bb_pos, testhashu64Fnv1.toLong())
293 true
294 } else {
295 false
296 }
297 }
298 val testhashs32Fnv1a : Int
299 get() {
300 val o = __offset(44)
301 return if(o != 0) bb.getInt(o + bb_pos) else 0
302 }
303 fun mutateTesthashs32Fnv1a(testhashs32Fnv1a: Int) : Boolean {
304 val o = __offset(44)
305 return if (o != 0) {
306 bb.putInt(o + bb_pos, testhashs32Fnv1a)
307 true
308 } else {
309 false
310 }
311 }
312 val testhashu32Fnv1a : UInt
313 get() {
314 val o = __offset(46)
315 return if(o != 0) bb.getInt(o + bb_pos).toUInt() else 0u
316 }
317 fun mutateTesthashu32Fnv1a(testhashu32Fnv1a: UInt) : Boolean {
318 val o = __offset(46)
319 return if (o != 0) {
320 bb.putInt(o + bb_pos, testhashu32Fnv1a.toInt())
321 true
322 } else {
323 false
324 }
325 }
326 val testhashs64Fnv1a : Long
327 get() {
328 val o = __offset(48)
329 return if(o != 0) bb.getLong(o + bb_pos) else 0L
330 }
331 fun mutateTesthashs64Fnv1a(testhashs64Fnv1a: Long) : Boolean {
332 val o = __offset(48)
333 return if (o != 0) {
334 bb.putLong(o + bb_pos, testhashs64Fnv1a)
335 true
336 } else {
337 false
338 }
339 }
340 val testhashu64Fnv1a : ULong
341 get() {
342 val o = __offset(50)
343 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
344 }
345 fun mutateTesthashu64Fnv1a(testhashu64Fnv1a: ULong) : Boolean {
346 val o = __offset(50)
347 return if (o != 0) {
348 bb.putLong(o + bb_pos, testhashu64Fnv1a.toLong())
349 true
350 } else {
351 false
352 }
353 }
354 fun testarrayofbools(j: Int) : Boolean {
355 val o = __offset(52)
356 return if (o != 0) {
357 0.toByte() != bb.get(__vector(o) + j * 1)
358 } else {
359 false
360 }
361 }
362 val testarrayofboolsLength : Int
363 get() {
364 val o = __offset(52); return if (o != 0) __vector_len(o) else 0
365 }
366 val testarrayofboolsAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(52, 1)
367 fun testarrayofboolsInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 52, 1)
368 fun mutateTestarrayofbools(j: Int, testarrayofbools: Boolean) : Boolean {
369 val o = __offset(52)
370 return if (o != 0) {
371 bb.put(__vector(o) + j * 1, (if(testarrayofbools) 1 else 0).toByte())
372 true
373 } else {
374 false
375 }
376 }
377 val testf : Float
378 get() {
379 val o = __offset(54)
380 return if(o != 0) bb.getFloat(o + bb_pos) else 3.14159f
381 }
382 fun mutateTestf(testf: Float) : Boolean {
383 val o = __offset(54)
384 return if (o != 0) {
385 bb.putFloat(o + bb_pos, testf)
386 true
387 } else {
388 false
389 }
390 }
391 val testf2 : Float
392 get() {
393 val o = __offset(56)
394 return if(o != 0) bb.getFloat(o + bb_pos) else 3.0f
395 }
396 fun mutateTestf2(testf2: Float) : Boolean {
397 val o = __offset(56)
398 return if (o != 0) {
399 bb.putFloat(o + bb_pos, testf2)
400 true
401 } else {
402 false
403 }
404 }
405 val testf3 : Float
406 get() {
407 val o = __offset(58)
408 return if(o != 0) bb.getFloat(o + bb_pos) else 0.0f
409 }
410 fun mutateTestf3(testf3: Float) : Boolean {
411 val o = __offset(58)
412 return if (o != 0) {
413 bb.putFloat(o + bb_pos, testf3)
414 true
415 } else {
416 false
417 }
418 }
419 fun testarrayofstring2(j: Int) : String? {
420 val o = __offset(60)
421 return if (o != 0) {
422 __string(__vector(o) + j * 4)
423 } else {
424 null
425 }
426 }
427 val testarrayofstring2Length : Int
428 get() {
429 val o = __offset(60); return if (o != 0) __vector_len(o) else 0
430 }
431 fun testarrayofsortedstruct(j: Int) : MyGame.Example.Ability? = testarrayofsortedstruct(MyGame.Example.Ability(), j)
432 fun testarrayofsortedstruct(obj: MyGame.Example.Ability, j: Int) : MyGame.Example.Ability? {
433 val o = __offset(62)
434 return if (o != 0) {
435 obj.__assign(__vector(o) + j * 8, bb)
436 } else {
437 null
438 }
439 }
440 val testarrayofsortedstructLength : Int
441 get() {
442 val o = __offset(62); return if (o != 0) __vector_len(o) else 0
443 }
444 fun flex(j: Int) : UByte {
445 val o = __offset(64)
446 return if (o != 0) {
447 bb.get(__vector(o) + j * 1).toUByte()
448 } else {
449 0u
450 }
451 }
452 val flexLength : Int
453 get() {
454 val o = __offset(64); return if (o != 0) __vector_len(o) else 0
455 }
456 val flexAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(64, 1)
457 fun flexInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 64, 1)
458 fun mutateFlex(j: Int, flex: UByte) : Boolean {
459 val o = __offset(64)
460 return if (o != 0) {
461 bb.put(__vector(o) + j * 1, flex.toByte())
462 true
463 } else {
464 false
465 }
466 }
467 fun test5(j: Int) : MyGame.Example.Test? = test5(MyGame.Example.Test(), j)
468 fun test5(obj: MyGame.Example.Test, j: Int) : MyGame.Example.Test? {
469 val o = __offset(66)
470 return if (o != 0) {
471 obj.__assign(__vector(o) + j * 4, bb)
472 } else {
473 null
474 }
475 }
476 val test5Length : Int
477 get() {
478 val o = __offset(66); return if (o != 0) __vector_len(o) else 0
479 }
480 fun vectorOfLongs(j: Int) : Long {
481 val o = __offset(68)
482 return if (o != 0) {
483 bb.getLong(__vector(o) + j * 8)
484 } else {
485 0
486 }
487 }
488 val vectorOfLongsLength : Int
489 get() {
490 val o = __offset(68); return if (o != 0) __vector_len(o) else 0
491 }
492 val vectorOfLongsAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(68, 8)
493 fun vectorOfLongsInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 68, 8)
494 fun mutateVectorOfLongs(j: Int, vectorOfLongs: Long) : Boolean {
495 val o = __offset(68)
496 return if (o != 0) {
497 bb.putLong(__vector(o) + j * 8, vectorOfLongs)
498 true
499 } else {
500 false
501 }
502 }
503 fun vectorOfDoubles(j: Int) : Double {
504 val o = __offset(70)
505 return if (o != 0) {
506 bb.getDouble(__vector(o) + j * 8)
507 } else {
508 0.0
509 }
510 }
511 val vectorOfDoublesLength : Int
512 get() {
513 val o = __offset(70); return if (o != 0) __vector_len(o) else 0
514 }
515 val vectorOfDoublesAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(70, 8)
516 fun vectorOfDoublesInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 70, 8)
517 fun mutateVectorOfDoubles(j: Int, vectorOfDoubles: Double) : Boolean {
518 val o = __offset(70)
519 return if (o != 0) {
520 bb.putDouble(__vector(o) + j * 8, vectorOfDoubles)
521 true
522 } else {
523 false
524 }
525 }
526 val parentNamespaceTest : MyGame.InParentNamespace? get() = parentNamespaceTest(MyGame.InParentNamespace())
527 fun parentNamespaceTest(obj: MyGame.InParentNamespace) : MyGame.InParentNamespace? {
528 val o = __offset(72)
529 return if (o != 0) {
530 obj.__assign(__indirect(o + bb_pos), bb)
531 } else {
532 null
533 }
534 }
535 fun vectorOfReferrables(j: Int) : MyGame.Example.Referrable? = vectorOfReferrables(MyGame.Example.Referrable(), j)
536 fun vectorOfReferrables(obj: MyGame.Example.Referrable, j: Int) : MyGame.Example.Referrable? {
537 val o = __offset(74)
538 return if (o != 0) {
539 obj.__assign(__indirect(__vector(o) + j * 4), bb)
540 } else {
541 null
542 }
543 }
544 val vectorOfReferrablesLength : Int
545 get() {
546 val o = __offset(74); return if (o != 0) __vector_len(o) else 0
547 }
548 fun vectorOfReferrablesByKey(key: ULong) : MyGame.Example.Referrable? {
549 val o = __offset(74)
550 return if (o != 0) {
551 MyGame.Example.Referrable.__lookup_by_key(null, __vector(o), key, bb)
552 } else {
553 null
554 }
555 }
556 fun vectorOfReferrablesByKey(obj: MyGame.Example.Referrable, key: ULong) : MyGame.Example.Referrable? {
557 val o = __offset(74)
558 return if (o != 0) {
559 MyGame.Example.Referrable.__lookup_by_key(obj, __vector(o), key, bb)
560 } else {
561 null
562 }
563 }
564 val singleWeakReference : ULong
565 get() {
566 val o = __offset(76)
567 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
568 }
569 fun mutateSingleWeakReference(singleWeakReference: ULong) : Boolean {
570 val o = __offset(76)
571 return if (o != 0) {
572 bb.putLong(o + bb_pos, singleWeakReference.toLong())
573 true
574 } else {
575 false
576 }
577 }
578 fun vectorOfWeakReferences(j: Int) : ULong {
579 val o = __offset(78)
580 return if (o != 0) {
581 bb.getLong(__vector(o) + j * 8).toULong()
582 } else {
583 0uL
584 }
585 }
586 val vectorOfWeakReferencesLength : Int
587 get() {
588 val o = __offset(78); return if (o != 0) __vector_len(o) else 0
589 }
590 val vectorOfWeakReferencesAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(78, 8)
591 fun vectorOfWeakReferencesInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 78, 8)
592 fun mutateVectorOfWeakReferences(j: Int, vectorOfWeakReferences: ULong) : Boolean {
593 val o = __offset(78)
594 return if (o != 0) {
595 bb.putLong(__vector(o) + j * 8, vectorOfWeakReferences.toLong())
596 true
597 } else {
598 false
599 }
600 }
601 fun vectorOfStrongReferrables(j: Int) : MyGame.Example.Referrable? = vectorOfStrongReferrables(MyGame.Example.Referrable(), j)
602 fun vectorOfStrongReferrables(obj: MyGame.Example.Referrable, j: Int) : MyGame.Example.Referrable? {
603 val o = __offset(80)
604 return if (o != 0) {
605 obj.__assign(__indirect(__vector(o) + j * 4), bb)
606 } else {
607 null
608 }
609 }
610 val vectorOfStrongReferrablesLength : Int
611 get() {
612 val o = __offset(80); return if (o != 0) __vector_len(o) else 0
613 }
614 fun vectorOfStrongReferrablesByKey(key: ULong) : MyGame.Example.Referrable? {
615 val o = __offset(80)
616 return if (o != 0) {
617 MyGame.Example.Referrable.__lookup_by_key(null, __vector(o), key, bb)
618 } else {
619 null
620 }
621 }
622 fun vectorOfStrongReferrablesByKey(obj: MyGame.Example.Referrable, key: ULong) : MyGame.Example.Referrable? {
623 val o = __offset(80)
624 return if (o != 0) {
625 MyGame.Example.Referrable.__lookup_by_key(obj, __vector(o), key, bb)
626 } else {
627 null
628 }
629 }
630 val coOwningReference : ULong
631 get() {
632 val o = __offset(82)
633 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
634 }
635 fun mutateCoOwningReference(coOwningReference: ULong) : Boolean {
636 val o = __offset(82)
637 return if (o != 0) {
638 bb.putLong(o + bb_pos, coOwningReference.toLong())
639 true
640 } else {
641 false
642 }
643 }
644 fun vectorOfCoOwningReferences(j: Int) : ULong {
645 val o = __offset(84)
646 return if (o != 0) {
647 bb.getLong(__vector(o) + j * 8).toULong()
648 } else {
649 0uL
650 }
651 }
652 val vectorOfCoOwningReferencesLength : Int
653 get() {
654 val o = __offset(84); return if (o != 0) __vector_len(o) else 0
655 }
656 val vectorOfCoOwningReferencesAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(84, 8)
657 fun vectorOfCoOwningReferencesInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 84, 8)
658 fun mutateVectorOfCoOwningReferences(j: Int, vectorOfCoOwningReferences: ULong) : Boolean {
659 val o = __offset(84)
660 return if (o != 0) {
661 bb.putLong(__vector(o) + j * 8, vectorOfCoOwningReferences.toLong())
662 true
663 } else {
664 false
665 }
666 }
667 val nonOwningReference : ULong
668 get() {
669 val o = __offset(86)
670 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
671 }
672 fun mutateNonOwningReference(nonOwningReference: ULong) : Boolean {
673 val o = __offset(86)
674 return if (o != 0) {
675 bb.putLong(o + bb_pos, nonOwningReference.toLong())
676 true
677 } else {
678 false
679 }
680 }
681 fun vectorOfNonOwningReferences(j: Int) : ULong {
682 val o = __offset(88)
683 return if (o != 0) {
684 bb.getLong(__vector(o) + j * 8).toULong()
685 } else {
686 0uL
687 }
688 }
689 val vectorOfNonOwningReferencesLength : Int
690 get() {
691 val o = __offset(88); return if (o != 0) __vector_len(o) else 0
692 }
693 val vectorOfNonOwningReferencesAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(88, 8)
694 fun vectorOfNonOwningReferencesInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 88, 8)
695 fun mutateVectorOfNonOwningReferences(j: Int, vectorOfNonOwningReferences: ULong) : Boolean {
696 val o = __offset(88)
697 return if (o != 0) {
698 bb.putLong(__vector(o) + j * 8, vectorOfNonOwningReferences.toLong())
699 true
700 } else {
701 false
702 }
703 }
704 val anyUniqueType : UByte
705 get() {
706 val o = __offset(90)
707 return if(o != 0) bb.get(o + bb_pos).toUByte() else 0u
708 }
709 fun mutateAnyUniqueType(anyUniqueType: UByte) : Boolean {
710 val o = __offset(90)
711 return if (o != 0) {
712 bb.put(o + bb_pos, anyUniqueType.toByte())
713 true
714 } else {
715 false
716 }
717 }
718 fun anyUnique(obj: Table) : Table? {
Austin Schuh272c6132020-11-14 16:37:52 -0800719 val o = __offset(92); return if (o != 0) __union(obj, o + bb_pos) else null
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700720 }
721 val anyAmbiguousType : UByte
722 get() {
723 val o = __offset(94)
724 return if(o != 0) bb.get(o + bb_pos).toUByte() else 0u
725 }
726 fun mutateAnyAmbiguousType(anyAmbiguousType: UByte) : Boolean {
727 val o = __offset(94)
728 return if (o != 0) {
729 bb.put(o + bb_pos, anyAmbiguousType.toByte())
730 true
731 } else {
732 false
733 }
734 }
735 fun anyAmbiguous(obj: Table) : Table? {
Austin Schuh272c6132020-11-14 16:37:52 -0800736 val o = __offset(96); return if (o != 0) __union(obj, o + bb_pos) else null
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700737 }
738 fun vectorOfEnums(j: Int) : UByte {
739 val o = __offset(98)
740 return if (o != 0) {
741 bb.get(__vector(o) + j * 1).toUByte()
742 } else {
743 0u
744 }
745 }
746 val vectorOfEnumsLength : Int
747 get() {
748 val o = __offset(98); return if (o != 0) __vector_len(o) else 0
749 }
750 val vectorOfEnumsAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(98, 1)
751 fun vectorOfEnumsInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 98, 1)
752 fun mutateVectorOfEnums(j: Int, vectorOfEnums: UByte) : Boolean {
753 val o = __offset(98)
754 return if (o != 0) {
755 bb.put(__vector(o) + j * 1, vectorOfEnums.toByte())
756 true
757 } else {
758 false
759 }
760 }
Austin Schuh272c6132020-11-14 16:37:52 -0800761 val signedEnum : Byte
762 get() {
763 val o = __offset(100)
764 return if(o != 0) bb.get(o + bb_pos) else -1
765 }
766 fun mutateSignedEnum(signedEnum: Byte) : Boolean {
767 val o = __offset(100)
768 return if (o != 0) {
769 bb.put(o + bb_pos, signedEnum)
770 true
771 } else {
772 false
773 }
774 }
775 fun testrequirednestedflatbuffer(j: Int) : UByte {
776 val o = __offset(102)
777 return if (o != 0) {
778 bb.get(__vector(o) + j * 1).toUByte()
779 } else {
780 0u
781 }
782 }
783 val testrequirednestedflatbufferLength : Int
784 get() {
785 val o = __offset(102); return if (o != 0) __vector_len(o) else 0
786 }
787 val testrequirednestedflatbufferAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(102, 1)
788 fun testrequirednestedflatbufferInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 102, 1)
789 val testrequirednestedflatbufferAsMonster : MyGame.Example.Monster? get() = testrequirednestedflatbufferAsMonster(MyGame.Example.Monster())
790 fun testrequirednestedflatbufferAsMonster(obj: MyGame.Example.Monster) : MyGame.Example.Monster? {
791 val o = __offset(102)
792 return if (o != 0) {
793 obj.__assign(__indirect(__vector(o)), bb)
794 } else {
795 null
796 }
797 }
798 fun mutateTestrequirednestedflatbuffer(j: Int, testrequirednestedflatbuffer: UByte) : Boolean {
799 val o = __offset(102)
800 return if (o != 0) {
801 bb.put(__vector(o) + j * 1, testrequirednestedflatbuffer.toByte())
802 true
803 } else {
804 false
805 }
806 }
James Kuszmaul8e62b022022-03-22 09:33:25 -0700807 fun scalarKeySortedTables(j: Int) : MyGame.Example.Stat? = scalarKeySortedTables(MyGame.Example.Stat(), j)
808 fun scalarKeySortedTables(obj: MyGame.Example.Stat, j: Int) : MyGame.Example.Stat? {
809 val o = __offset(104)
810 return if (o != 0) {
811 obj.__assign(__indirect(__vector(o) + j * 4), bb)
812 } else {
813 null
814 }
815 }
816 val scalarKeySortedTablesLength : Int
817 get() {
818 val o = __offset(104); return if (o != 0) __vector_len(o) else 0
819 }
820 fun scalarKeySortedTablesByKey(key: UShort) : MyGame.Example.Stat? {
821 val o = __offset(104)
822 return if (o != 0) {
823 MyGame.Example.Stat.__lookup_by_key(null, __vector(o), key, bb)
824 } else {
825 null
826 }
827 }
828 fun scalarKeySortedTablesByKey(obj: MyGame.Example.Stat, key: UShort) : MyGame.Example.Stat? {
829 val o = __offset(104)
830 return if (o != 0) {
831 MyGame.Example.Stat.__lookup_by_key(obj, __vector(o), key, bb)
832 } else {
833 null
834 }
835 }
836 val nativeInline : MyGame.Example.Test? get() = nativeInline(MyGame.Example.Test())
837 fun nativeInline(obj: MyGame.Example.Test) : MyGame.Example.Test? {
838 val o = __offset(106)
839 return if (o != 0) {
840 obj.__assign(o + bb_pos, bb)
841 } else {
842 null
843 }
844 }
845 val longEnumNonEnumDefault : ULong
846 get() {
847 val o = __offset(108)
848 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
849 }
850 fun mutateLongEnumNonEnumDefault(longEnumNonEnumDefault: ULong) : Boolean {
851 val o = __offset(108)
852 return if (o != 0) {
853 bb.putLong(o + bb_pos, longEnumNonEnumDefault.toLong())
854 true
855 } else {
856 false
857 }
858 }
859 val longEnumNormalDefault : ULong
860 get() {
861 val o = __offset(110)
862 return if(o != 0) bb.getLong(o + bb_pos).toULong() else 2UL
863 }
864 fun mutateLongEnumNormalDefault(longEnumNormalDefault: ULong) : Boolean {
865 val o = __offset(110)
866 return if (o != 0) {
867 bb.putLong(o + bb_pos, longEnumNormalDefault.toLong())
868 true
869 } else {
870 false
871 }
872 }
James Kuszmaul3b15b0c2022-11-08 14:03:16 -0800873 val nanDefault : Float
874 get() {
875 val o = __offset(112)
876 return if(o != 0) bb.getFloat(o + bb_pos) else Float.NaN
877 }
878 fun mutateNanDefault(nanDefault: Float) : Boolean {
879 val o = __offset(112)
880 return if (o != 0) {
881 bb.putFloat(o + bb_pos, nanDefault)
882 true
883 } else {
884 false
885 }
886 }
887 val infDefault : Float
888 get() {
889 val o = __offset(114)
890 return if(o != 0) bb.getFloat(o + bb_pos) else Float.POSITIVE_INFINITY
891 }
892 fun mutateInfDefault(infDefault: Float) : Boolean {
893 val o = __offset(114)
894 return if (o != 0) {
895 bb.putFloat(o + bb_pos, infDefault)
896 true
897 } else {
898 false
899 }
900 }
901 val positiveInfDefault : Float
902 get() {
903 val o = __offset(116)
904 return if(o != 0) bb.getFloat(o + bb_pos) else Float.POSITIVE_INFINITY
905 }
906 fun mutatePositiveInfDefault(positiveInfDefault: Float) : Boolean {
907 val o = __offset(116)
908 return if (o != 0) {
909 bb.putFloat(o + bb_pos, positiveInfDefault)
910 true
911 } else {
912 false
913 }
914 }
915 val infinityDefault : Float
916 get() {
917 val o = __offset(118)
918 return if(o != 0) bb.getFloat(o + bb_pos) else Float.POSITIVE_INFINITY
919 }
920 fun mutateInfinityDefault(infinityDefault: Float) : Boolean {
921 val o = __offset(118)
922 return if (o != 0) {
923 bb.putFloat(o + bb_pos, infinityDefault)
924 true
925 } else {
926 false
927 }
928 }
929 val positiveInfinityDefault : Float
930 get() {
931 val o = __offset(120)
932 return if(o != 0) bb.getFloat(o + bb_pos) else Float.POSITIVE_INFINITY
933 }
934 fun mutatePositiveInfinityDefault(positiveInfinityDefault: Float) : Boolean {
935 val o = __offset(120)
936 return if (o != 0) {
937 bb.putFloat(o + bb_pos, positiveInfinityDefault)
938 true
939 } else {
940 false
941 }
942 }
943 val negativeInfDefault : Float
944 get() {
945 val o = __offset(122)
946 return if(o != 0) bb.getFloat(o + bb_pos) else Float.NEGATIVE_INFINITY
947 }
948 fun mutateNegativeInfDefault(negativeInfDefault: Float) : Boolean {
949 val o = __offset(122)
950 return if (o != 0) {
951 bb.putFloat(o + bb_pos, negativeInfDefault)
952 true
953 } else {
954 false
955 }
956 }
957 val negativeInfinityDefault : Float
958 get() {
959 val o = __offset(124)
960 return if(o != 0) bb.getFloat(o + bb_pos) else Float.NEGATIVE_INFINITY
961 }
962 fun mutateNegativeInfinityDefault(negativeInfinityDefault: Float) : Boolean {
963 val o = __offset(124)
964 return if (o != 0) {
965 bb.putFloat(o + bb_pos, negativeInfinityDefault)
966 true
967 } else {
968 false
969 }
970 }
971 val doubleInfDefault : Double
972 get() {
973 val o = __offset(126)
974 return if(o != 0) bb.getDouble(o + bb_pos) else Double.POSITIVE_INFINITY
975 }
976 fun mutateDoubleInfDefault(doubleInfDefault: Double) : Boolean {
977 val o = __offset(126)
978 return if (o != 0) {
979 bb.putDouble(o + bb_pos, doubleInfDefault)
980 true
981 } else {
982 false
983 }
984 }
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700985 override fun keysCompare(o1: Int, o2: Int, _bb: ByteBuffer) : Int {
986 return compareStrings(__offset(10, o1, _bb), __offset(10, o2, _bb), _bb)
987 }
988 companion object {
James Kuszmaul3b15b0c2022-11-08 14:03:16 -0800989 fun validateVersion() = Constants.FLATBUFFERS_22_10_26()
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700990 fun getRootAsMonster(_bb: ByteBuffer): Monster = getRootAsMonster(_bb, Monster())
991 fun getRootAsMonster(_bb: ByteBuffer, obj: Monster): Monster {
992 _bb.order(ByteOrder.LITTLE_ENDIAN)
993 return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb))
994 }
995 fun MonsterBufferHasIdentifier(_bb: ByteBuffer) : Boolean = __has_identifier(_bb, "MONS")
James Kuszmaul3b15b0c2022-11-08 14:03:16 -0800996 fun startMonster(builder: FlatBufferBuilder) = builder.startTable(62)
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700997 fun addPos(builder: FlatBufferBuilder, pos: Int) = builder.addStruct(0, pos, 0)
998 fun addMana(builder: FlatBufferBuilder, mana: Short) = builder.addShort(1, mana, 150)
999 fun addHp(builder: FlatBufferBuilder, hp: Short) = builder.addShort(2, hp, 100)
Austin Schuh2dd86a92022-09-14 21:19:23 -07001000 fun addName(builder: FlatBufferBuilder, name: Int) {
1001 builder.addOffset(name)
1002 builder.slot(3)
1003 }
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001004 fun addInventory(builder: FlatBufferBuilder, inventory: Int) = builder.addOffset(5, inventory, 0)
1005 fun createInventoryVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1006 builder.startVector(1, data.size, 1)
1007 for (i in data.size - 1 downTo 0) {
1008 builder.addByte(data[i].toByte())
1009 }
1010 return builder.endVector()
1011 }
1012 fun startInventoryVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
1013 fun addColor(builder: FlatBufferBuilder, color: UByte) = builder.addByte(6, color.toByte(), 8)
1014 fun addTestType(builder: FlatBufferBuilder, testType: UByte) = builder.addByte(7, testType.toByte(), 0)
1015 fun addTest(builder: FlatBufferBuilder, test: Int) = builder.addOffset(8, test, 0)
1016 fun addTest4(builder: FlatBufferBuilder, test4: Int) = builder.addOffset(9, test4, 0)
1017 fun startTest4Vector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 2)
1018 fun addTestarrayofstring(builder: FlatBufferBuilder, testarrayofstring: Int) = builder.addOffset(10, testarrayofstring, 0)
1019 fun createTestarrayofstringVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1020 builder.startVector(4, data.size, 4)
1021 for (i in data.size - 1 downTo 0) {
1022 builder.addOffset(data[i])
1023 }
1024 return builder.endVector()
1025 }
1026 fun startTestarrayofstringVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1027 fun addTestarrayoftables(builder: FlatBufferBuilder, testarrayoftables: Int) = builder.addOffset(11, testarrayoftables, 0)
1028 fun createTestarrayoftablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1029 builder.startVector(4, data.size, 4)
1030 for (i in data.size - 1 downTo 0) {
1031 builder.addOffset(data[i])
1032 }
1033 return builder.endVector()
1034 }
1035 fun startTestarrayoftablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1036 fun addEnemy(builder: FlatBufferBuilder, enemy: Int) = builder.addOffset(12, enemy, 0)
1037 fun addTestnestedflatbuffer(builder: FlatBufferBuilder, testnestedflatbuffer: Int) = builder.addOffset(13, testnestedflatbuffer, 0)
1038 fun createTestnestedflatbufferVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1039 builder.startVector(1, data.size, 1)
1040 for (i in data.size - 1 downTo 0) {
1041 builder.addByte(data[i].toByte())
1042 }
1043 return builder.endVector()
1044 }
1045 fun startTestnestedflatbufferVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
1046 fun addTestempty(builder: FlatBufferBuilder, testempty: Int) = builder.addOffset(14, testempty, 0)
1047 fun addTestbool(builder: FlatBufferBuilder, testbool: Boolean) = builder.addBoolean(15, testbool, false)
1048 fun addTesthashs32Fnv1(builder: FlatBufferBuilder, testhashs32Fnv1: Int) = builder.addInt(16, testhashs32Fnv1, 0)
1049 fun addTesthashu32Fnv1(builder: FlatBufferBuilder, testhashu32Fnv1: UInt) = builder.addInt(17, testhashu32Fnv1.toInt(), 0)
1050 fun addTesthashs64Fnv1(builder: FlatBufferBuilder, testhashs64Fnv1: Long) = builder.addLong(18, testhashs64Fnv1, 0L)
1051 fun addTesthashu64Fnv1(builder: FlatBufferBuilder, testhashu64Fnv1: ULong) = builder.addLong(19, testhashu64Fnv1.toLong(), 0)
1052 fun addTesthashs32Fnv1a(builder: FlatBufferBuilder, testhashs32Fnv1a: Int) = builder.addInt(20, testhashs32Fnv1a, 0)
1053 fun addTesthashu32Fnv1a(builder: FlatBufferBuilder, testhashu32Fnv1a: UInt) = builder.addInt(21, testhashu32Fnv1a.toInt(), 0)
1054 fun addTesthashs64Fnv1a(builder: FlatBufferBuilder, testhashs64Fnv1a: Long) = builder.addLong(22, testhashs64Fnv1a, 0L)
1055 fun addTesthashu64Fnv1a(builder: FlatBufferBuilder, testhashu64Fnv1a: ULong) = builder.addLong(23, testhashu64Fnv1a.toLong(), 0)
1056 fun addTestarrayofbools(builder: FlatBufferBuilder, testarrayofbools: Int) = builder.addOffset(24, testarrayofbools, 0)
1057 fun createTestarrayofboolsVector(builder: FlatBufferBuilder, data: BooleanArray) : Int {
1058 builder.startVector(1, data.size, 1)
1059 for (i in data.size - 1 downTo 0) {
1060 builder.addBoolean(data[i])
1061 }
1062 return builder.endVector()
1063 }
1064 fun startTestarrayofboolsVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
1065 fun addTestf(builder: FlatBufferBuilder, testf: Float) = builder.addFloat(25, testf, 3.14159)
1066 fun addTestf2(builder: FlatBufferBuilder, testf2: Float) = builder.addFloat(26, testf2, 3.0)
1067 fun addTestf3(builder: FlatBufferBuilder, testf3: Float) = builder.addFloat(27, testf3, 0.0)
1068 fun addTestarrayofstring2(builder: FlatBufferBuilder, testarrayofstring2: Int) = builder.addOffset(28, testarrayofstring2, 0)
1069 fun createTestarrayofstring2Vector(builder: FlatBufferBuilder, data: IntArray) : Int {
1070 builder.startVector(4, data.size, 4)
1071 for (i in data.size - 1 downTo 0) {
1072 builder.addOffset(data[i])
1073 }
1074 return builder.endVector()
1075 }
1076 fun startTestarrayofstring2Vector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1077 fun addTestarrayofsortedstruct(builder: FlatBufferBuilder, testarrayofsortedstruct: Int) = builder.addOffset(29, testarrayofsortedstruct, 0)
1078 fun startTestarrayofsortedstructVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 4)
1079 fun addFlex(builder: FlatBufferBuilder, flex: Int) = builder.addOffset(30, flex, 0)
1080 fun createFlexVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1081 builder.startVector(1, data.size, 1)
1082 for (i in data.size - 1 downTo 0) {
1083 builder.addByte(data[i].toByte())
1084 }
1085 return builder.endVector()
1086 }
1087 fun startFlexVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
1088 fun addTest5(builder: FlatBufferBuilder, test5: Int) = builder.addOffset(31, test5, 0)
1089 fun startTest5Vector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 2)
1090 fun addVectorOfLongs(builder: FlatBufferBuilder, vectorOfLongs: Int) = builder.addOffset(32, vectorOfLongs, 0)
1091 fun createVectorOfLongsVector(builder: FlatBufferBuilder, data: LongArray) : Int {
1092 builder.startVector(8, data.size, 8)
1093 for (i in data.size - 1 downTo 0) {
1094 builder.addLong(data[i])
1095 }
1096 return builder.endVector()
1097 }
1098 fun startVectorOfLongsVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1099 fun addVectorOfDoubles(builder: FlatBufferBuilder, vectorOfDoubles: Int) = builder.addOffset(33, vectorOfDoubles, 0)
1100 fun createVectorOfDoublesVector(builder: FlatBufferBuilder, data: DoubleArray) : Int {
1101 builder.startVector(8, data.size, 8)
1102 for (i in data.size - 1 downTo 0) {
1103 builder.addDouble(data[i])
1104 }
1105 return builder.endVector()
1106 }
1107 fun startVectorOfDoublesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1108 fun addParentNamespaceTest(builder: FlatBufferBuilder, parentNamespaceTest: Int) = builder.addOffset(34, parentNamespaceTest, 0)
1109 fun addVectorOfReferrables(builder: FlatBufferBuilder, vectorOfReferrables: Int) = builder.addOffset(35, vectorOfReferrables, 0)
1110 fun createVectorOfReferrablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1111 builder.startVector(4, data.size, 4)
1112 for (i in data.size - 1 downTo 0) {
1113 builder.addOffset(data[i])
1114 }
1115 return builder.endVector()
1116 }
1117 fun startVectorOfReferrablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1118 fun addSingleWeakReference(builder: FlatBufferBuilder, singleWeakReference: ULong) = builder.addLong(36, singleWeakReference.toLong(), 0)
1119 fun addVectorOfWeakReferences(builder: FlatBufferBuilder, vectorOfWeakReferences: Int) = builder.addOffset(37, vectorOfWeakReferences, 0)
1120 fun createVectorOfWeakReferencesVector(builder: FlatBufferBuilder, data: ULongArray) : Int {
1121 builder.startVector(8, data.size, 8)
1122 for (i in data.size - 1 downTo 0) {
1123 builder.addLong(data[i].toLong())
1124 }
1125 return builder.endVector()
1126 }
1127 fun startVectorOfWeakReferencesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1128 fun addVectorOfStrongReferrables(builder: FlatBufferBuilder, vectorOfStrongReferrables: Int) = builder.addOffset(38, vectorOfStrongReferrables, 0)
1129 fun createVectorOfStrongReferrablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1130 builder.startVector(4, data.size, 4)
1131 for (i in data.size - 1 downTo 0) {
1132 builder.addOffset(data[i])
1133 }
1134 return builder.endVector()
1135 }
1136 fun startVectorOfStrongReferrablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1137 fun addCoOwningReference(builder: FlatBufferBuilder, coOwningReference: ULong) = builder.addLong(39, coOwningReference.toLong(), 0)
1138 fun addVectorOfCoOwningReferences(builder: FlatBufferBuilder, vectorOfCoOwningReferences: Int) = builder.addOffset(40, vectorOfCoOwningReferences, 0)
1139 fun createVectorOfCoOwningReferencesVector(builder: FlatBufferBuilder, data: ULongArray) : Int {
1140 builder.startVector(8, data.size, 8)
1141 for (i in data.size - 1 downTo 0) {
1142 builder.addLong(data[i].toLong())
1143 }
1144 return builder.endVector()
1145 }
1146 fun startVectorOfCoOwningReferencesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1147 fun addNonOwningReference(builder: FlatBufferBuilder, nonOwningReference: ULong) = builder.addLong(41, nonOwningReference.toLong(), 0)
1148 fun addVectorOfNonOwningReferences(builder: FlatBufferBuilder, vectorOfNonOwningReferences: Int) = builder.addOffset(42, vectorOfNonOwningReferences, 0)
1149 fun createVectorOfNonOwningReferencesVector(builder: FlatBufferBuilder, data: ULongArray) : Int {
1150 builder.startVector(8, data.size, 8)
1151 for (i in data.size - 1 downTo 0) {
1152 builder.addLong(data[i].toLong())
1153 }
1154 return builder.endVector()
1155 }
1156 fun startVectorOfNonOwningReferencesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1157 fun addAnyUniqueType(builder: FlatBufferBuilder, anyUniqueType: UByte) = builder.addByte(43, anyUniqueType.toByte(), 0)
1158 fun addAnyUnique(builder: FlatBufferBuilder, anyUnique: Int) = builder.addOffset(44, anyUnique, 0)
1159 fun addAnyAmbiguousType(builder: FlatBufferBuilder, anyAmbiguousType: UByte) = builder.addByte(45, anyAmbiguousType.toByte(), 0)
1160 fun addAnyAmbiguous(builder: FlatBufferBuilder, anyAmbiguous: Int) = builder.addOffset(46, anyAmbiguous, 0)
1161 fun addVectorOfEnums(builder: FlatBufferBuilder, vectorOfEnums: Int) = builder.addOffset(47, vectorOfEnums, 0)
1162 fun createVectorOfEnumsVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1163 builder.startVector(1, data.size, 1)
1164 for (i in data.size - 1 downTo 0) {
1165 builder.addByte(data[i].toByte())
1166 }
1167 return builder.endVector()
1168 }
1169 fun startVectorOfEnumsVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
Austin Schuh272c6132020-11-14 16:37:52 -08001170 fun addSignedEnum(builder: FlatBufferBuilder, signedEnum: Byte) = builder.addByte(48, signedEnum, -1)
1171 fun addTestrequirednestedflatbuffer(builder: FlatBufferBuilder, testrequirednestedflatbuffer: Int) = builder.addOffset(49, testrequirednestedflatbuffer, 0)
1172 fun createTestrequirednestedflatbufferVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1173 builder.startVector(1, data.size, 1)
1174 for (i in data.size - 1 downTo 0) {
1175 builder.addByte(data[i].toByte())
1176 }
1177 return builder.endVector()
1178 }
1179 fun startTestrequirednestedflatbufferVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
James Kuszmaul8e62b022022-03-22 09:33:25 -07001180 fun addScalarKeySortedTables(builder: FlatBufferBuilder, scalarKeySortedTables: Int) = builder.addOffset(50, scalarKeySortedTables, 0)
1181 fun createScalarKeySortedTablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1182 builder.startVector(4, data.size, 4)
1183 for (i in data.size - 1 downTo 0) {
1184 builder.addOffset(data[i])
1185 }
1186 return builder.endVector()
1187 }
1188 fun startScalarKeySortedTablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1189 fun addNativeInline(builder: FlatBufferBuilder, nativeInline: Int) = builder.addStruct(51, nativeInline, 0)
1190 fun addLongEnumNonEnumDefault(builder: FlatBufferBuilder, longEnumNonEnumDefault: ULong) = builder.addLong(52, longEnumNonEnumDefault.toLong(), 0)
1191 fun addLongEnumNormalDefault(builder: FlatBufferBuilder, longEnumNormalDefault: ULong) = builder.addLong(53, longEnumNormalDefault.toLong(), 2)
James Kuszmaul3b15b0c2022-11-08 14:03:16 -08001192 fun addNanDefault(builder: FlatBufferBuilder, nanDefault: Float) = builder.addFloat(54, nanDefault, Double.NaN)
1193 fun addInfDefault(builder: FlatBufferBuilder, infDefault: Float) = builder.addFloat(55, infDefault, Double.POSITIVE_INFINITY)
1194 fun addPositiveInfDefault(builder: FlatBufferBuilder, positiveInfDefault: Float) = builder.addFloat(56, positiveInfDefault, Double.POSITIVE_INFINITY)
1195 fun addInfinityDefault(builder: FlatBufferBuilder, infinityDefault: Float) = builder.addFloat(57, infinityDefault, Double.POSITIVE_INFINITY)
1196 fun addPositiveInfinityDefault(builder: FlatBufferBuilder, positiveInfinityDefault: Float) = builder.addFloat(58, positiveInfinityDefault, Double.POSITIVE_INFINITY)
1197 fun addNegativeInfDefault(builder: FlatBufferBuilder, negativeInfDefault: Float) = builder.addFloat(59, negativeInfDefault, Double.NEGATIVE_INFINITY)
1198 fun addNegativeInfinityDefault(builder: FlatBufferBuilder, negativeInfinityDefault: Float) = builder.addFloat(60, negativeInfinityDefault, Double.NEGATIVE_INFINITY)
1199 fun addDoubleInfDefault(builder: FlatBufferBuilder, doubleInfDefault: Double) = builder.addDouble(61, doubleInfDefault, Double.POSITIVE_INFINITY)
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001200 fun endMonster(builder: FlatBufferBuilder) : Int {
1201 val o = builder.endTable()
1202 builder.required(o, 10)
1203 return o
1204 }
1205 fun finishMonsterBuffer(builder: FlatBufferBuilder, offset: Int) = builder.finish(offset, "MONS")
1206 fun finishSizePrefixedMonsterBuffer(builder: FlatBufferBuilder, offset: Int) = builder.finishSizePrefixed(offset, "MONS")
1207 fun __lookup_by_key(obj: Monster?, vectorLocation: Int, key: String, bb: ByteBuffer) : Monster? {
Austin Schuh272c6132020-11-14 16:37:52 -08001208 val byteKey = key.toByteArray(java.nio.charset.StandardCharsets.UTF_8)
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001209 var span = bb.getInt(vectorLocation - 4)
1210 var start = 0
1211 while (span != 0) {
1212 var middle = span / 2
1213 val tableOffset = __indirect(vectorLocation + 4 * (start + middle), bb)
1214 val comp = compareStrings(__offset(10, bb.capacity() - tableOffset, bb), byteKey, bb)
1215 when {
1216 comp > 0 -> span = middle
1217 comp < 0 -> {
1218 middle++
1219 start += middle
1220 span -= middle
1221 }
1222 else -> {
1223 return (obj ?: Monster()).__assign(tableOffset, bb)
1224 }
1225 }
1226 }
1227 return null
1228 }
1229 }
1230}