mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-09 06:30:54 +00:00
[Kotlin] Fix key lookup returning null clashing with default value (#7237)
* [Java] Fix key lookup returning null clashing with default value A field with key attribute must always be written on the message so it can be looked up by key. There is a edge case where inserting a key field with same value as default would prevent it to be written on the message and later cannot be found when searched by key. * [Kotlin] Fix key lookup returning null clashing with default value A field with key attribute must always be written on the message so it can be looked up by key. There is a edge case where inserting a key field with same value as default would prevent it to be written on the message and later cannot be found when searched by key. Co-authored-by: Derek Bailey <derekbailey@google.com>
This commit is contained in:
@@ -885,7 +885,10 @@ class Monster : Table() {
|
||||
fun addPos(builder: FlatBufferBuilder, pos: Int) = builder.addStruct(0, pos, 0)
|
||||
fun addMana(builder: FlatBufferBuilder, mana: Short) = builder.addShort(1, mana, 150)
|
||||
fun addHp(builder: FlatBufferBuilder, hp: Short) = builder.addShort(2, hp, 100)
|
||||
fun addName(builder: FlatBufferBuilder, name: Int) = builder.addOffset(3, name, 0)
|
||||
fun addName(builder: FlatBufferBuilder, name: Int) {
|
||||
builder.addOffset(name)
|
||||
builder.slot(3)
|
||||
}
|
||||
fun addInventory(builder: FlatBufferBuilder, inventory: Int) = builder.addOffset(5, inventory, 0)
|
||||
fun createInventoryVector(builder: FlatBufferBuilder, data: UByteArray) : Int {
|
||||
builder.startVector(1, data.size, 1)
|
||||
|
||||
@@ -48,7 +48,10 @@ class Referrable : Table() {
|
||||
return endReferrable(builder)
|
||||
}
|
||||
fun startReferrable(builder: FlatBufferBuilder) = builder.startTable(1)
|
||||
fun addId(builder: FlatBufferBuilder, id: ULong) = builder.addLong(0, id.toLong(), 0)
|
||||
fun addId(builder: FlatBufferBuilder, id: ULong) {
|
||||
builder.addLong(id.toLong())
|
||||
builder.slot(0)
|
||||
}
|
||||
fun endReferrable(builder: FlatBufferBuilder) : Int {
|
||||
val o = builder.endTable()
|
||||
return o
|
||||
|
||||
@@ -73,7 +73,10 @@ class Stat : Table() {
|
||||
fun startStat(builder: FlatBufferBuilder) = builder.startTable(3)
|
||||
fun addId(builder: FlatBufferBuilder, id: Int) = builder.addOffset(0, id, 0)
|
||||
fun addVal_(builder: FlatBufferBuilder, val_: Long) = builder.addLong(1, val_, 0L)
|
||||
fun addCount(builder: FlatBufferBuilder, count: UShort) = builder.addShort(2, count.toShort(), 0)
|
||||
fun addCount(builder: FlatBufferBuilder, count: UShort) {
|
||||
builder.addShort(count.toShort())
|
||||
builder.slot(2)
|
||||
}
|
||||
fun endStat(builder: FlatBufferBuilder) : Int {
|
||||
val o = builder.endTable()
|
||||
return o
|
||||
|
||||
Reference in New Issue
Block a user