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