mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-15 00:38:52 +00:00
Add explicit return types to lobster generated code (#7312)
* Add explicit return types to lobster generated code * Add support for optional fields. Convert to bool explicitly from int8 to match type signature Fix whitespace
This commit is contained in:
committed by
GitHub
parent
74a25536be
commit
9e8c758f54
@@ -19,11 +19,11 @@ class Monster
|
||||
class Weapon
|
||||
|
||||
class Vec3 : flatbuffers_handle
|
||||
def x():
|
||||
def x() -> float:
|
||||
return buf_.read_float32_le(pos_ + 0)
|
||||
def y():
|
||||
def y() -> float:
|
||||
return buf_.read_float32_le(pos_ + 4)
|
||||
def z():
|
||||
def z() -> float:
|
||||
return buf_.read_float32_le(pos_ + 8)
|
||||
|
||||
def CreateVec3(b_:flatbuffers_builder, x:float, y:float, z:float):
|
||||
@@ -34,32 +34,32 @@ def CreateVec3(b_:flatbuffers_builder, x:float, y:float, z:float):
|
||||
return b_.Offset()
|
||||
|
||||
class Monster : flatbuffers_handle
|
||||
def pos():
|
||||
def pos() -> MyGame_Sample_Vec3?:
|
||||
let o = buf_.flatbuffers_field_struct(pos_, 4)
|
||||
return if o: MyGame_Sample_Vec3 { buf_, o } else: nil
|
||||
def mana():
|
||||
def mana() -> int:
|
||||
return buf_.flatbuffers_field_int16(pos_, 6, 150)
|
||||
def hp():
|
||||
def hp() -> int:
|
||||
return buf_.flatbuffers_field_int16(pos_, 8, 100)
|
||||
def name():
|
||||
def name() -> string:
|
||||
return buf_.flatbuffers_field_string(pos_, 10)
|
||||
def inventory(i:int):
|
||||
def inventory(i:int) -> int:
|
||||
return buf_.read_uint8_le(buf_.flatbuffers_field_vector(pos_, 14) + i * 1)
|
||||
def inventory_length():
|
||||
def inventory_length() -> int:
|
||||
return buf_.flatbuffers_field_vector_len(pos_, 14)
|
||||
def color():
|
||||
def color() -> Color:
|
||||
return Color(buf_.flatbuffers_field_int8(pos_, 16, 2))
|
||||
def weapons(i:int):
|
||||
def weapons(i:int) -> MyGame_Sample_Weapon:
|
||||
return MyGame_Sample_Weapon { buf_, buf_.flatbuffers_indirect(buf_.flatbuffers_field_vector(pos_, 18) + i * 4) }
|
||||
def weapons_length():
|
||||
def weapons_length() -> int:
|
||||
return buf_.flatbuffers_field_vector_len(pos_, 18)
|
||||
def equipped_type():
|
||||
def equipped_type() -> Equipment:
|
||||
return Equipment(buf_.flatbuffers_field_uint8(pos_, 20, 0))
|
||||
def equipped_as_Weapon():
|
||||
return MyGame_Sample_Weapon { buf_, buf_.flatbuffers_field_table(pos_, 22) }
|
||||
def path(i:int):
|
||||
def path(i:int) -> MyGame_Sample_Vec3:
|
||||
return MyGame_Sample_Vec3 { buf_, buf_.flatbuffers_field_vector(pos_, 24) + i * 12 }
|
||||
def path_length():
|
||||
def path_length() -> int:
|
||||
return buf_.flatbuffers_field_vector_len(pos_, 24)
|
||||
|
||||
def GetRootAsMonster(buf:string): return Monster { buf, buf.flatbuffers_indirect(0) }
|
||||
@@ -120,9 +120,9 @@ def MonsterStartPathVector(b_:flatbuffers_builder, n_:int):
|
||||
b_.StartVector(12, n_, 4)
|
||||
|
||||
class Weapon : flatbuffers_handle
|
||||
def name():
|
||||
def name() -> string:
|
||||
return buf_.flatbuffers_field_string(pos_, 4)
|
||||
def damage():
|
||||
def damage() -> int:
|
||||
return buf_.flatbuffers_field_int16(pos_, 6, 0)
|
||||
|
||||
def GetRootAsWeapon(buf:string): return Weapon { buf, buf.flatbuffers_indirect(0) }
|
||||
|
||||
Reference in New Issue
Block a user