mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-24 15:06:10 +00:00
Fix 64-bit numeric enum values in typescript (#7135)
* Fix 64-bit default numeric enum values in typescript If you had a default value that wasn't a valid enum value (e.g., a zero if you used a bit_flag setting, like you get with AdvancedFeatures in reflection.fbs), we weren't using BigInt. * Run generate_code.py * [DART] Handle deprecated fields & invalid enum defaults * Update .NET test
This commit is contained in:
@@ -842,6 +842,34 @@ class Monster : Table() {
|
||||
null
|
||||
}
|
||||
}
|
||||
val longEnumNonEnumDefault : ULong
|
||||
get() {
|
||||
val o = __offset(108)
|
||||
return if(o != 0) bb.getLong(o + bb_pos).toULong() else 0UL
|
||||
}
|
||||
fun mutateLongEnumNonEnumDefault(longEnumNonEnumDefault: ULong) : Boolean {
|
||||
val o = __offset(108)
|
||||
return if (o != 0) {
|
||||
bb.putLong(o + bb_pos, longEnumNonEnumDefault.toLong())
|
||||
true
|
||||
} else {
|
||||
false
|
||||
}
|
||||
}
|
||||
val longEnumNormalDefault : ULong
|
||||
get() {
|
||||
val o = __offset(110)
|
||||
return if(o != 0) bb.getLong(o + bb_pos).toULong() else 2UL
|
||||
}
|
||||
fun mutateLongEnumNormalDefault(longEnumNormalDefault: ULong) : Boolean {
|
||||
val o = __offset(110)
|
||||
return if (o != 0) {
|
||||
bb.putLong(o + bb_pos, longEnumNormalDefault.toLong())
|
||||
true
|
||||
} else {
|
||||
false
|
||||
}
|
||||
}
|
||||
override fun keysCompare(o1: Int, o2: Int, _bb: ByteBuffer) : Int {
|
||||
return compareStrings(__offset(10, o1, _bb), __offset(10, o2, _bb), _bb)
|
||||
}
|
||||
@@ -853,7 +881,7 @@ class Monster : Table() {
|
||||
return (obj.__assign(_bb.getInt(_bb.position()) + _bb.position(), _bb))
|
||||
}
|
||||
fun MonsterBufferHasIdentifier(_bb: ByteBuffer) : Boolean = __has_identifier(_bb, "MONS")
|
||||
fun startMonster(builder: FlatBufferBuilder) = builder.startTable(52)
|
||||
fun startMonster(builder: FlatBufferBuilder) = builder.startTable(54)
|
||||
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)
|
||||
@@ -1044,6 +1072,8 @@ class Monster : Table() {
|
||||
}
|
||||
fun startScalarKeySortedTablesVector(builder: FlatBufferBuilder, numElems: Int) = builder.startVector(4, numElems, 4)
|
||||
fun addNativeInline(builder: FlatBufferBuilder, nativeInline: Int) = builder.addStruct(51, nativeInline, 0)
|
||||
fun addLongEnumNonEnumDefault(builder: FlatBufferBuilder, longEnumNonEnumDefault: ULong) = builder.addLong(52, longEnumNonEnumDefault.toLong(), 0)
|
||||
fun addLongEnumNormalDefault(builder: FlatBufferBuilder, longEnumNormalDefault: ULong) = builder.addLong(53, longEnumNormalDefault.toLong(), 2)
|
||||
fun endMonster(builder: FlatBufferBuilder) : Int {
|
||||
val o = builder.endTable()
|
||||
builder.required(o, 10)
|
||||
|
||||
Reference in New Issue
Block a user