blob: 1abe05c059cbc5d6e2c02fc8a92b89bab582b225 [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 }
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700873 override fun keysCompare(o1: Int, o2: Int, _bb: ByteBuffer) : Int {
874 return compareStrings(__offset(10, o1, _bb), __offset(10, o2, _bb), _bb)
875 }
876 companion object {
James Kuszmaul8e62b022022-03-22 09:33:25 -0700877 fun validateVersion() = Constants.FLATBUFFERS_2_0_0()
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700878 fun getRootAsMonster(_bb: ByteBuffer): Monster = getRootAsMonster(_bb, Monster())
879 fun getRootAsMonster(_bb: ByteBuffer, obj: Monster): Monster {
880 _bb.order(ByteOrder.LITTLE_ENDIAN)
881 return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb))
882 }
883 fun MonsterBufferHasIdentifier(_bb: ByteBuffer) : Boolean = __has_identifier(_bb, "MONS")
James Kuszmaul8e62b022022-03-22 09:33:25 -0700884 fun startMonster(builder: FlatBufferBuilder) = builder.startTable(54)
Austin Schuhe89fa2d2019-08-14 20:24:23 -0700885 fun addPos(builder: FlatBufferBuilder, pos: Int) = builder.addStruct(0, pos, 0)
886 fun addMana(builder: FlatBufferBuilder, mana: Short) = builder.addShort(1, mana, 150)
887 fun addHp(builder: FlatBufferBuilder, hp: Short) = builder.addShort(2, hp, 100)
888 fun addName(builder: FlatBufferBuilder, name: Int) = builder.addOffset(3, name, 0)
889 fun addInventory(builder: FlatBufferBuilder, inventory: Int) = builder.addOffset(5, inventory, 0)
890 fun createInventoryVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
891 builder.startVector(1, data.size, 1)
892 for (i in data.size - 1 downTo 0) {
893 builder.addByte(data[i].toByte())
894 }
895 return builder.endVector()
896 }
897 fun startInventoryVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
898 fun addColor(builder: FlatBufferBuilder, color: UByte) = builder.addByte(6, color.toByte(), 8)
899 fun addTestType(builder: FlatBufferBuilder, testType: UByte) = builder.addByte(7, testType.toByte(), 0)
900 fun addTest(builder: FlatBufferBuilder, test: Int) = builder.addOffset(8, test, 0)
901 fun addTest4(builder: FlatBufferBuilder, test4: Int) = builder.addOffset(9, test4, 0)
902 fun startTest4Vector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 2)
903 fun addTestarrayofstring(builder: FlatBufferBuilder, testarrayofstring: Int) = builder.addOffset(10, testarrayofstring, 0)
904 fun createTestarrayofstringVector(builder: FlatBufferBuilder, data: IntArray) : Int {
905 builder.startVector(4, data.size, 4)
906 for (i in data.size - 1 downTo 0) {
907 builder.addOffset(data[i])
908 }
909 return builder.endVector()
910 }
911 fun startTestarrayofstringVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
912 fun addTestarrayoftables(builder: FlatBufferBuilder, testarrayoftables: Int) = builder.addOffset(11, testarrayoftables, 0)
913 fun createTestarrayoftablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
914 builder.startVector(4, data.size, 4)
915 for (i in data.size - 1 downTo 0) {
916 builder.addOffset(data[i])
917 }
918 return builder.endVector()
919 }
920 fun startTestarrayoftablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
921 fun addEnemy(builder: FlatBufferBuilder, enemy: Int) = builder.addOffset(12, enemy, 0)
922 fun addTestnestedflatbuffer(builder: FlatBufferBuilder, testnestedflatbuffer: Int) = builder.addOffset(13, testnestedflatbuffer, 0)
923 fun createTestnestedflatbufferVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
924 builder.startVector(1, data.size, 1)
925 for (i in data.size - 1 downTo 0) {
926 builder.addByte(data[i].toByte())
927 }
928 return builder.endVector()
929 }
930 fun startTestnestedflatbufferVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
931 fun addTestempty(builder: FlatBufferBuilder, testempty: Int) = builder.addOffset(14, testempty, 0)
932 fun addTestbool(builder: FlatBufferBuilder, testbool: Boolean) = builder.addBoolean(15, testbool, false)
933 fun addTesthashs32Fnv1(builder: FlatBufferBuilder, testhashs32Fnv1: Int) = builder.addInt(16, testhashs32Fnv1, 0)
934 fun addTesthashu32Fnv1(builder: FlatBufferBuilder, testhashu32Fnv1: UInt) = builder.addInt(17, testhashu32Fnv1.toInt(), 0)
935 fun addTesthashs64Fnv1(builder: FlatBufferBuilder, testhashs64Fnv1: Long) = builder.addLong(18, testhashs64Fnv1, 0L)
936 fun addTesthashu64Fnv1(builder: FlatBufferBuilder, testhashu64Fnv1: ULong) = builder.addLong(19, testhashu64Fnv1.toLong(), 0)
937 fun addTesthashs32Fnv1a(builder: FlatBufferBuilder, testhashs32Fnv1a: Int) = builder.addInt(20, testhashs32Fnv1a, 0)
938 fun addTesthashu32Fnv1a(builder: FlatBufferBuilder, testhashu32Fnv1a: UInt) = builder.addInt(21, testhashu32Fnv1a.toInt(), 0)
939 fun addTesthashs64Fnv1a(builder: FlatBufferBuilder, testhashs64Fnv1a: Long) = builder.addLong(22, testhashs64Fnv1a, 0L)
940 fun addTesthashu64Fnv1a(builder: FlatBufferBuilder, testhashu64Fnv1a: ULong) = builder.addLong(23, testhashu64Fnv1a.toLong(), 0)
941 fun addTestarrayofbools(builder: FlatBufferBuilder, testarrayofbools: Int) = builder.addOffset(24, testarrayofbools, 0)
942 fun createTestarrayofboolsVector(builder: FlatBufferBuilder, data: BooleanArray) : Int {
943 builder.startVector(1, data.size, 1)
944 for (i in data.size - 1 downTo 0) {
945 builder.addBoolean(data[i])
946 }
947 return builder.endVector()
948 }
949 fun startTestarrayofboolsVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
950 fun addTestf(builder: FlatBufferBuilder, testf: Float) = builder.addFloat(25, testf, 3.14159)
951 fun addTestf2(builder: FlatBufferBuilder, testf2: Float) = builder.addFloat(26, testf2, 3.0)
952 fun addTestf3(builder: FlatBufferBuilder, testf3: Float) = builder.addFloat(27, testf3, 0.0)
953 fun addTestarrayofstring2(builder: FlatBufferBuilder, testarrayofstring2: Int) = builder.addOffset(28, testarrayofstring2, 0)
954 fun createTestarrayofstring2Vector(builder: FlatBufferBuilder, data: IntArray) : Int {
955 builder.startVector(4, data.size, 4)
956 for (i in data.size - 1 downTo 0) {
957 builder.addOffset(data[i])
958 }
959 return builder.endVector()
960 }
961 fun startTestarrayofstring2Vector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
962 fun addTestarrayofsortedstruct(builder: FlatBufferBuilder, testarrayofsortedstruct: Int) = builder.addOffset(29, testarrayofsortedstruct, 0)
963 fun startTestarrayofsortedstructVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 4)
964 fun addFlex(builder: FlatBufferBuilder, flex: Int) = builder.addOffset(30, flex, 0)
965 fun createFlexVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
966 builder.startVector(1, data.size, 1)
967 for (i in data.size - 1 downTo 0) {
968 builder.addByte(data[i].toByte())
969 }
970 return builder.endVector()
971 }
972 fun startFlexVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
973 fun addTest5(builder: FlatBufferBuilder, test5: Int) = builder.addOffset(31, test5, 0)
974 fun startTest5Vector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 2)
975 fun addVectorOfLongs(builder: FlatBufferBuilder, vectorOfLongs: Int) = builder.addOffset(32, vectorOfLongs, 0)
976 fun createVectorOfLongsVector(builder: FlatBufferBuilder, data: LongArray) : Int {
977 builder.startVector(8, data.size, 8)
978 for (i in data.size - 1 downTo 0) {
979 builder.addLong(data[i])
980 }
981 return builder.endVector()
982 }
983 fun startVectorOfLongsVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
984 fun addVectorOfDoubles(builder: FlatBufferBuilder, vectorOfDoubles: Int) = builder.addOffset(33, vectorOfDoubles, 0)
985 fun createVectorOfDoublesVector(builder: FlatBufferBuilder, data: DoubleArray) : Int {
986 builder.startVector(8, data.size, 8)
987 for (i in data.size - 1 downTo 0) {
988 builder.addDouble(data[i])
989 }
990 return builder.endVector()
991 }
992 fun startVectorOfDoublesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
993 fun addParentNamespaceTest(builder: FlatBufferBuilder, parentNamespaceTest: Int) = builder.addOffset(34, parentNamespaceTest, 0)
994 fun addVectorOfReferrables(builder: FlatBufferBuilder, vectorOfReferrables: Int) = builder.addOffset(35, vectorOfReferrables, 0)
995 fun createVectorOfReferrablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
996 builder.startVector(4, data.size, 4)
997 for (i in data.size - 1 downTo 0) {
998 builder.addOffset(data[i])
999 }
1000 return builder.endVector()
1001 }
1002 fun startVectorOfReferrablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1003 fun addSingleWeakReference(builder: FlatBufferBuilder, singleWeakReference: ULong) = builder.addLong(36, singleWeakReference.toLong(), 0)
1004 fun addVectorOfWeakReferences(builder: FlatBufferBuilder, vectorOfWeakReferences: Int) = builder.addOffset(37, vectorOfWeakReferences, 0)
1005 fun createVectorOfWeakReferencesVector(builder: FlatBufferBuilder, data: ULongArray) : Int {
1006 builder.startVector(8, data.size, 8)
1007 for (i in data.size - 1 downTo 0) {
1008 builder.addLong(data[i].toLong())
1009 }
1010 return builder.endVector()
1011 }
1012 fun startVectorOfWeakReferencesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1013 fun addVectorOfStrongReferrables(builder: FlatBufferBuilder, vectorOfStrongReferrables: Int) = builder.addOffset(38, vectorOfStrongReferrables, 0)
1014 fun createVectorOfStrongReferrablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1015 builder.startVector(4, data.size, 4)
1016 for (i in data.size - 1 downTo 0) {
1017 builder.addOffset(data[i])
1018 }
1019 return builder.endVector()
1020 }
1021 fun startVectorOfStrongReferrablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1022 fun addCoOwningReference(builder: FlatBufferBuilder, coOwningReference: ULong) = builder.addLong(39, coOwningReference.toLong(), 0)
1023 fun addVectorOfCoOwningReferences(builder: FlatBufferBuilder, vectorOfCoOwningReferences: Int) = builder.addOffset(40, vectorOfCoOwningReferences, 0)
1024 fun createVectorOfCoOwningReferencesVector(builder: FlatBufferBuilder, data: ULongArray) : Int {
1025 builder.startVector(8, data.size, 8)
1026 for (i in data.size - 1 downTo 0) {
1027 builder.addLong(data[i].toLong())
1028 }
1029 return builder.endVector()
1030 }
1031 fun startVectorOfCoOwningReferencesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1032 fun addNonOwningReference(builder: FlatBufferBuilder, nonOwningReference: ULong) = builder.addLong(41, nonOwningReference.toLong(), 0)
1033 fun addVectorOfNonOwningReferences(builder: FlatBufferBuilder, vectorOfNonOwningReferences: Int) = builder.addOffset(42, vectorOfNonOwningReferences, 0)
1034 fun createVectorOfNonOwningReferencesVector(builder: FlatBufferBuilder, data: ULongArray) : Int {
1035 builder.startVector(8, data.size, 8)
1036 for (i in data.size - 1 downTo 0) {
1037 builder.addLong(data[i].toLong())
1038 }
1039 return builder.endVector()
1040 }
1041 fun startVectorOfNonOwningReferencesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(8, numElems, 8)
1042 fun addAnyUniqueType(builder: FlatBufferBuilder, anyUniqueType: UByte) = builder.addByte(43, anyUniqueType.toByte(), 0)
1043 fun addAnyUnique(builder: FlatBufferBuilder, anyUnique: Int) = builder.addOffset(44, anyUnique, 0)
1044 fun addAnyAmbiguousType(builder: FlatBufferBuilder, anyAmbiguousType: UByte) = builder.addByte(45, anyAmbiguousType.toByte(), 0)
1045 fun addAnyAmbiguous(builder: FlatBufferBuilder, anyAmbiguous: Int) = builder.addOffset(46, anyAmbiguous, 0)
1046 fun addVectorOfEnums(builder: FlatBufferBuilder, vectorOfEnums: Int) = builder.addOffset(47, vectorOfEnums, 0)
1047 fun createVectorOfEnumsVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1048 builder.startVector(1, data.size, 1)
1049 for (i in data.size - 1 downTo 0) {
1050 builder.addByte(data[i].toByte())
1051 }
1052 return builder.endVector()
1053 }
1054 fun startVectorOfEnumsVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
Austin Schuh272c6132020-11-14 16:37:52 -08001055 fun addSignedEnum(builder: FlatBufferBuilder, signedEnum: Byte) = builder.addByte(48, signedEnum, -1)
1056 fun addTestrequirednestedflatbuffer(builder: FlatBufferBuilder, testrequirednestedflatbuffer: Int) = builder.addOffset(49, testrequirednestedflatbuffer, 0)
1057 fun createTestrequirednestedflatbufferVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
1058 builder.startVector(1, data.size, 1)
1059 for (i in data.size - 1 downTo 0) {
1060 builder.addByte(data[i].toByte())
1061 }
1062 return builder.endVector()
1063 }
1064 fun startTestrequirednestedflatbufferVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(1, numElems, 1)
James Kuszmaul8e62b022022-03-22 09:33:25 -07001065 fun addScalarKeySortedTables(builder: FlatBufferBuilder, scalarKeySortedTables: Int) = builder.addOffset(50, scalarKeySortedTables, 0)
1066 fun createScalarKeySortedTablesVector(builder: FlatBufferBuilder, data: IntArray) : Int {
1067 builder.startVector(4, data.size, 4)
1068 for (i in data.size - 1 downTo 0) {
1069 builder.addOffset(data[i])
1070 }
1071 return builder.endVector()
1072 }
1073 fun startScalarKeySortedTablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
1074 fun addNativeInline(builder: FlatBufferBuilder, nativeInline: Int) = builder.addStruct(51, nativeInline, 0)
1075 fun addLongEnumNonEnumDefault(builder: FlatBufferBuilder, longEnumNonEnumDefault: ULong) = builder.addLong(52, longEnumNonEnumDefault.toLong(), 0)
1076 fun addLongEnumNormalDefault(builder: FlatBufferBuilder, longEnumNormalDefault: ULong) = builder.addLong(53, longEnumNormalDefault.toLong(), 2)
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001077 fun endMonster(builder: FlatBufferBuilder) : Int {
1078 val o = builder.endTable()
1079 builder.required(o, 10)
1080 return o
1081 }
1082 fun finishMonsterBuffer(builder: FlatBufferBuilder, offset: Int) = builder.finish(offset, "MONS")
1083 fun finishSizePrefixedMonsterBuffer(builder: FlatBufferBuilder, offset: Int) = builder.finishSizePrefixed(offset, "MONS")
1084 fun __lookup_by_key(obj: Monster?, vectorLocation: Int, key: String, bb: ByteBuffer) : Monster? {
Austin Schuh272c6132020-11-14 16:37:52 -08001085 val byteKey = key.toByteArray(java.nio.charset.StandardCharsets.UTF_8)
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001086 var span = bb.getInt(vectorLocation - 4)
1087 var start = 0
1088 while (span != 0) {
1089 var middle = span / 2
1090 val tableOffset = __indirect(vectorLocation + 4 * (start + middle), bb)
1091 val comp = compareStrings(__offset(10, bb.capacity() - tableOffset, bb), byteKey, bb)
1092 when {
1093 comp > 0 -> span = middle
1094 comp < 0 -> {
1095 middle++
1096 start += middle
1097 span -= middle
1098 }
1099 else -> {
1100 return (obj ?: Monster()).__assign(tableOffset, bb)
1101 }
1102 }
1103 }
1104 return null
1105 }
1106 }
1107}