...
1// automatically generated by the FlatBuffers compiler, do not modify
2
3package DictionaryLookup
4
5import com.google.flatbuffers.BaseVector
6import com.google.flatbuffers.BooleanVector
7import com.google.flatbuffers.ByteVector
8import com.google.flatbuffers.Constants
9import com.google.flatbuffers.DoubleVector
10import com.google.flatbuffers.FlatBufferBuilder
11import com.google.flatbuffers.FloatVector
12import com.google.flatbuffers.LongVector
13import com.google.flatbuffers.StringVector
14import com.google.flatbuffers.Struct
15import com.google.flatbuffers.Table
16import com.google.flatbuffers.UnionVector
17import java.nio.ByteBuffer
18import java.nio.ByteOrder
19import kotlin.math.sign
20
21@Suppress("unused")
22class LongFloatEntry : Table() {
23
24 fun __init(_i: Int, _bb: ByteBuffer) {
25 __reset(_i, _bb)
26 }
27 fun __assign(_i: Int, _bb: ByteBuffer) : LongFloatEntry {
28 __init(_i, _bb)
29 return this
30 }
31 val key : Long
32 get() {
33 val o = __offset(4)
34 return if(o != 0) bb.getLong(o + bb_pos) else 0L
35 }
36 val value : Float
37 get() {
38 val o = __offset(6)
39 return if(o != 0) bb.getFloat(o + bb_pos) else 0.0f
40 }
41 override fun keysCompare(o1: Int, o2: Int, _bb: ByteBuffer) : Int {
42 val val_1 = _bb.getLong(__offset(4, o1, _bb))
43 val val_2 = _bb.getLong(__offset(4, o2, _bb))
44 return (val_1 - val_2).sign
45 }
46 companion object {
47 fun validateVersion() = Constants.FLATBUFFERS_23_5_26()
48 fun getRootAsLongFloatEntry(_bb: ByteBuffer): LongFloatEntry = getRootAsLongFloatEntry(_bb, LongFloatEntry())
49 fun getRootAsLongFloatEntry(_bb: ByteBuffer, obj: LongFloatEntry): LongFloatEntry {
50 _bb.order(ByteOrder.LITTLE_ENDIAN)
51 return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb))
52 }
53 fun createLongFloatEntry(builder: FlatBufferBuilder, key: Long, value: Float) : Int {
54 builder.startTable(2)
55 addKey(builder, key)
56 addValue(builder, value)
57 return endLongFloatEntry(builder)
58 }
59 fun startLongFloatEntry(builder: FlatBufferBuilder) = builder.startTable(2)
60 fun addKey(builder: FlatBufferBuilder, key: Long) {
61 builder.addLong(key)
62 builder.slot(0)
63 }
64 fun addValue(builder: FlatBufferBuilder, value: Float) = builder.addFloat(1, value, 0.0)
65 fun endLongFloatEntry(builder: FlatBufferBuilder) : Int {
66 val o = builder.endTable()
67 return o
68 }
69 fun __lookup_by_key(obj: LongFloatEntry?, vectorLocation: Int, key: Long, bb: ByteBuffer) : LongFloatEntry? {
70 var span = bb.getInt(vectorLocation - 4)
71 var start = 0
72 while (span != 0) {
73 var middle = span / 2
74 val tableOffset = __indirect(vectorLocation + 4 * (start + middle), bb)
75 val value = bb.getLong(__offset(4, bb.capacity() - tableOffset, bb))
76 val comp = value.compareTo(key)
77 when {
78 comp > 0 -> span = middle
79 comp < 0 -> {
80 middle++
81 start += middle
82 span -= middle
83 }
84 else -> {
85 return (obj ?: LongFloatEntry()).__assign(tableOffset, bb)
86 }
87 }
88 }
89 return null
90 }
91 }
92}
View as plain text