Austin Schuh | e89fa2d | 2019-08-14 20:24:23 -0700 | [diff] [blame] | 1 | // automatically generated by the FlatBuffers compiler, do not modify |
| 2 | |
| 3 | package MyGame.Example |
| 4 | |
| 5 | import java.nio.* |
| 6 | import kotlin.math.sign |
| 7 | import com.google.flatbuffers.* |
| 8 | |
| 9 | @Suppress("unused") |
Austin Schuh | e89fa2d | 2019-08-14 20:24:23 -0700 | [diff] [blame] | 10 | class Stat : Table() { |
| 11 | |
| 12 | fun __init(_i: Int, _bb: ByteBuffer) { |
| 13 | __reset(_i, _bb) |
| 14 | } |
| 15 | fun __assign(_i: Int, _bb: ByteBuffer) : Stat { |
| 16 | __init(_i, _bb) |
| 17 | return this |
| 18 | } |
| 19 | val id : String? |
| 20 | get() { |
| 21 | val o = __offset(4) |
| 22 | return if (o != 0) __string(o + bb_pos) else null |
| 23 | } |
| 24 | val idAsByteBuffer : ByteBuffer get() = __vector_as_bytebuffer(4, 1) |
| 25 | fun idInByteBuffer(_bb: ByteBuffer) : ByteBuffer = __vector_in_bytebuffer(_bb, 4, 1) |
| 26 | val val_ : Long |
| 27 | get() { |
| 28 | val o = __offset(6) |
| 29 | return if(o != 0) bb.getLong(o + bb_pos) else 0L |
| 30 | } |
| 31 | fun mutateVal_(val_: Long) : Boolean { |
| 32 | val o = __offset(6) |
| 33 | return if (o != 0) { |
| 34 | bb.putLong(o + bb_pos, val_) |
| 35 | true |
| 36 | } else { |
| 37 | false |
| 38 | } |
| 39 | } |
| 40 | val count : UShort |
| 41 | get() { |
| 42 | val o = __offset(8) |
| 43 | return if(o != 0) bb.getShort(o + bb_pos).toUShort() else 0u |
| 44 | } |
| 45 | fun mutateCount(count: UShort) : Boolean { |
| 46 | val o = __offset(8) |
| 47 | return if (o != 0) { |
| 48 | bb.putShort(o + bb_pos, count.toShort()) |
| 49 | true |
| 50 | } else { |
| 51 | false |
| 52 | } |
| 53 | } |
James Kuszmaul | 8e62b02 | 2022-03-22 09:33:25 -0700 | [diff] [blame^] | 54 | override fun keysCompare(o1: Int, o2: Int, _bb: ByteBuffer) : Int { |
| 55 | val val_1 = _bb.getShort(__offset(8, o1, _bb)) |
| 56 | val val_2 = _bb.getShort(__offset(8, o2, _bb)) |
| 57 | return (val_1 - val_2).sign |
| 58 | } |
Austin Schuh | e89fa2d | 2019-08-14 20:24:23 -0700 | [diff] [blame] | 59 | companion object { |
James Kuszmaul | 8e62b02 | 2022-03-22 09:33:25 -0700 | [diff] [blame^] | 60 | fun validateVersion() = Constants.FLATBUFFERS_2_0_0() |
Austin Schuh | e89fa2d | 2019-08-14 20:24:23 -0700 | [diff] [blame] | 61 | fun getRootAsStat(_bb: ByteBuffer): Stat = getRootAsStat(_bb, Stat()) |
| 62 | fun getRootAsStat(_bb: ByteBuffer, obj: Stat): Stat { |
| 63 | _bb.order(ByteOrder.LITTLE_ENDIAN) |
| 64 | return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb)) |
| 65 | } |
| 66 | fun createStat(builder: FlatBufferBuilder, idOffset: Int, val_: Long, count: UShort) : Int { |
| 67 | builder.startTable(3) |
| 68 | addVal_(builder, val_) |
| 69 | addId(builder, idOffset) |
| 70 | addCount(builder, count) |
| 71 | return endStat(builder) |
| 72 | } |
| 73 | fun startStat(builder: FlatBufferBuilder) = builder.startTable(3) |
| 74 | fun addId(builder: FlatBufferBuilder, id: Int) = builder.addOffset(0, id, 0) |
| 75 | fun addVal_(builder: FlatBufferBuilder, val_: Long) = builder.addLong(1, val_, 0L) |
| 76 | fun addCount(builder: FlatBufferBuilder, count: UShort) = builder.addShort(2, count.toShort(), 0) |
| 77 | fun endStat(builder: FlatBufferBuilder) : Int { |
| 78 | val o = builder.endTable() |
| 79 | return o |
| 80 | } |
James Kuszmaul | 8e62b02 | 2022-03-22 09:33:25 -0700 | [diff] [blame^] | 81 | fun __lookup_by_key(obj: Stat?, vectorLocation: Int, key: UShort, bb: ByteBuffer) : Stat? { |
| 82 | var span = bb.getInt(vectorLocation - 4) |
| 83 | var start = 0 |
| 84 | while (span != 0) { |
| 85 | var middle = span / 2 |
| 86 | val tableOffset = __indirect(vectorLocation + 4 * (start + middle), bb) |
| 87 | val value = bb.getShort(__offset(8, bb.capacity() - tableOffset, bb)).toUShort() |
| 88 | val comp = value.compareTo(key) |
| 89 | when { |
| 90 | comp > 0 -> span = middle |
| 91 | comp < 0 -> { |
| 92 | middle++ |
| 93 | start += middle |
| 94 | span -= middle |
| 95 | } |
| 96 | else -> { |
| 97 | return (obj ?: Stat()).__assign(tableOffset, bb) |
| 98 | } |
| 99 | } |
| 100 | } |
| 101 | return null |
| 102 | } |
Austin Schuh | e89fa2d | 2019-08-14 20:24:23 -0700 | [diff] [blame] | 103 | } |
| 104 | } |