• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// automatically generated by the FlatBuffers compiler, do not modify
2import flatbuffers
3
4namespace MyGame.Example
5
6/// Composite components of Monster color.
7enum Color:
8    Color_Red = 1
9    /// \brief color Green
10    /// Green is bit_flag with value (1u << 1)
11    Color_Green = 2
12    /// \brief color Blue (1u << 3)
13    Color_Blue = 8
14
15enum Race:
16    Race_None = -1
17    Race_Human = 0
18    Race_Dwarf = 1
19    Race_Elf = 2
20
21enum LongEnum:
22    LongEnum_LongOne = 2
23    LongEnum_LongTwo = 4
24    LongEnum_LongBig = 1099511627776
25
26enum Any:
27    Any_NONE = 0
28    Any_Monster = 1
29    Any_TestSimpleTableWithEnum = 2
30    Any_MyGame_Example2_Monster = 3
31
32enum AnyUniqueAliases:
33    AnyUniqueAliases_NONE = 0
34    AnyUniqueAliases_M = 1
35    AnyUniqueAliases_TS = 2
36    AnyUniqueAliases_M2 = 3
37
38enum AnyAmbiguousAliases:
39    AnyAmbiguousAliases_NONE = 0
40    AnyAmbiguousAliases_M1 = 1
41    AnyAmbiguousAliases_M2 = 2
42    AnyAmbiguousAliases_M3 = 3
43
44namespace MyGame
45
46class InParentNamespace
47
48namespace MyGame.Example2
49
50class Monster
51
52namespace MyGame.Example
53
54class Test
55
56class TestSimpleTableWithEnum
57
58class Vec3
59
60class Ability
61
62class StructOfStructs
63
64class StructOfStructsOfStructs
65
66class Stat
67
68class Referrable
69
70class Monster
71
72class TypeAliases
73
74namespace MyGame
75
76class InParentNamespace : flatbuffers.handle
77
78def GetRootAsInParentNamespace(buf:string): return InParentNamespace { buf, flatbuffers.indirect(buf, 0) }
79
80struct InParentNamespaceBuilder:
81    b_:flatbuffers.builder
82    def start():
83        b_.StartObject(0)
84        return this
85    def end():
86        return b_.EndObject()
87
88namespace MyGame.Example2
89
90class Monster : flatbuffers.handle
91
92def GetRootAsMonster(buf:string): return Monster { buf, flatbuffers.indirect(buf, 0) }
93
94struct MonsterBuilder:
95    b_:flatbuffers.builder
96    def start():
97        b_.StartObject(0)
98        return this
99    def end():
100        return b_.EndObject()
101
102namespace MyGame.Example
103
104class Test : flatbuffers.handle
105    def a() -> int:
106        return buf_.read_int16_le(pos_ + 0)
107    def b() -> int:
108        return buf_.read_int8_le(pos_ + 2)
109
110def CreateTest(b_:flatbuffers.builder, a:int, b:int):
111    b_.Prep(2, 4)
112    b_.Pad(1)
113    b_.PrependInt8(b)
114    b_.PrependInt16(a)
115    return b_.Offset()
116
117class TestSimpleTableWithEnum : flatbuffers.handle
118    def color() -> Color:
119        return Color(flatbuffers.field_uint8(buf_, pos_, 4, 2))
120
121def GetRootAsTestSimpleTableWithEnum(buf:string): return TestSimpleTableWithEnum { buf, flatbuffers.indirect(buf, 0) }
122
123struct TestSimpleTableWithEnumBuilder:
124    b_:flatbuffers.builder
125    def start():
126        b_.StartObject(1)
127        return this
128    def add_color(color:Color):
129        b_.PrependUint8Slot(0, color, 2)
130        return this
131    def end():
132        return b_.EndObject()
133
134class Vec3 : flatbuffers.handle
135    def x() -> float:
136        return buf_.read_float32_le(pos_ + 0)
137    def y() -> float:
138        return buf_.read_float32_le(pos_ + 4)
139    def z() -> float:
140        return buf_.read_float32_le(pos_ + 8)
141    def test1() -> float:
142        return buf_.read_float64_le(pos_ + 16)
143    def test2() -> Color:
144        return Color(buf_.read_uint8_le(pos_ + 24))
145    def test3() -> MyGame.Example.Test:
146        return MyGame.Example.Test{ buf_, pos_ + 26 }
147
148def CreateVec3(b_:flatbuffers.builder, x:float, y:float, z:float, test1:float, test2:Color, test3_a:int, test3_b:int):
149    b_.Prep(8, 32)
150    b_.Pad(2)
151    b_.Prep(2, 4)
152    b_.Pad(1)
153    b_.PrependInt8(test3_b)
154    b_.PrependInt16(test3_a)
155    b_.Pad(1)
156    b_.PrependUint8(test2)
157    b_.PrependFloat64(test1)
158    b_.Pad(4)
159    b_.PrependFloat32(z)
160    b_.PrependFloat32(y)
161    b_.PrependFloat32(x)
162    return b_.Offset()
163
164class Ability : flatbuffers.handle
165    def id() -> int:
166        return buf_.read_uint32_le(pos_ + 0)
167    def distance() -> int:
168        return buf_.read_uint32_le(pos_ + 4)
169
170def CreateAbility(b_:flatbuffers.builder, id:int, distance:int):
171    b_.Prep(4, 8)
172    b_.PrependUint32(distance)
173    b_.PrependUint32(id)
174    return b_.Offset()
175
176class StructOfStructs : flatbuffers.handle
177    def a() -> MyGame.Example.Ability:
178        return MyGame.Example.Ability{ buf_, pos_ + 0 }
179    def b() -> MyGame.Example.Test:
180        return MyGame.Example.Test{ buf_, pos_ + 8 }
181    def c() -> MyGame.Example.Ability:
182        return MyGame.Example.Ability{ buf_, pos_ + 12 }
183
184def CreateStructOfStructs(b_:flatbuffers.builder, a_id:int, a_distance:int, b_a:int, b_b:int, c_id:int, c_distance:int):
185    b_.Prep(4, 20)
186    b_.Prep(4, 8)
187    b_.PrependUint32(c_distance)
188    b_.PrependUint32(c_id)
189    b_.Prep(2, 4)
190    b_.Pad(1)
191    b_.PrependInt8(b_b)
192    b_.PrependInt16(b_a)
193    b_.Prep(4, 8)
194    b_.PrependUint32(a_distance)
195    b_.PrependUint32(a_id)
196    return b_.Offset()
197
198class StructOfStructsOfStructs : flatbuffers.handle
199    def a() -> MyGame.Example.StructOfStructs:
200        return MyGame.Example.StructOfStructs{ buf_, pos_ + 0 }
201
202def CreateStructOfStructsOfStructs(b_:flatbuffers.builder, a_a_id:int, a_a_distance:int, a_b_a:int, a_b_b:int, a_c_id:int, a_c_distance:int):
203    b_.Prep(4, 20)
204    b_.Prep(4, 20)
205    b_.Prep(4, 8)
206    b_.PrependUint32(a_c_distance)
207    b_.PrependUint32(a_c_id)
208    b_.Prep(2, 4)
209    b_.Pad(1)
210    b_.PrependInt8(a_b_b)
211    b_.PrependInt16(a_b_a)
212    b_.Prep(4, 8)
213    b_.PrependUint32(a_a_distance)
214    b_.PrependUint32(a_a_id)
215    return b_.Offset()
216
217class Stat : flatbuffers.handle
218    def id() -> string:
219        return flatbuffers.field_string(buf_, pos_, 4)
220    def val() -> int:
221        return flatbuffers.field_int64(buf_, pos_, 6, 0)
222    def count() -> int:
223        return flatbuffers.field_uint16(buf_, pos_, 8, 0)
224
225def GetRootAsStat(buf:string): return Stat { buf, flatbuffers.indirect(buf, 0) }
226
227struct StatBuilder:
228    b_:flatbuffers.builder
229    def start():
230        b_.StartObject(3)
231        return this
232    def add_id(id:flatbuffers.offset):
233        b_.PrependUOffsetTRelativeSlot(0, id)
234        return this
235    def add_val(val:int):
236        b_.PrependInt64Slot(1, val, 0)
237        return this
238    def add_count(count:int):
239        b_.PrependUint16Slot(2, count, 0)
240        return this
241    def end():
242        return b_.EndObject()
243
244class Referrable : flatbuffers.handle
245    def id() -> int:
246        return flatbuffers.field_uint64(buf_, pos_, 4, 0)
247
248def GetRootAsReferrable(buf:string): return Referrable { buf, flatbuffers.indirect(buf, 0) }
249
250struct ReferrableBuilder:
251    b_:flatbuffers.builder
252    def start():
253        b_.StartObject(1)
254        return this
255    def add_id(id:int):
256        b_.PrependUint64Slot(0, id, 0)
257        return this
258    def end():
259        return b_.EndObject()
260
261/// an example documentation comment: "monster object"
262class Monster : flatbuffers.handle
263    def pos() -> MyGame.Example.Vec3?:
264        let o = flatbuffers.field_struct(buf_, pos_, 4)
265        return if o: MyGame.Example.Vec3 { buf_, o } else: nil
266    def mana() -> int:
267        return flatbuffers.field_int16(buf_, pos_, 6, 150)
268    def hp() -> int:
269        return flatbuffers.field_int16(buf_, pos_, 8, 100)
270    def name() -> string:
271        return flatbuffers.field_string(buf_, pos_, 10)
272    def inventory(i:int) -> int:
273        return read_uint8_le(buf_, buf_.flatbuffers.field_vector(pos_, 14) + i * 1)
274    def inventory_length() -> int:
275        return flatbuffers.field_vector_len(buf_, pos_, 14)
276    def color() -> Color:
277        return Color(flatbuffers.field_uint8(buf_, pos_, 16, 8))
278    def test_type() -> Any:
279        return Any(flatbuffers.field_uint8(buf_, pos_, 18, 0))
280    def test_as_Monster():
281        return MyGame.Example.Monster { buf_, flatbuffers.field_table(buf_, pos_, 20) }
282    def test_as_TestSimpleTableWithEnum():
283        return MyGame.Example.TestSimpleTableWithEnum { buf_, flatbuffers.field_table(buf_, pos_, 20) }
284    def test_as_MyGame_Example2_Monster():
285        return MyGame.Example2.Monster { buf_, flatbuffers.field_table(buf_, pos_, 20) }
286    def test4(i:int) -> MyGame.Example.Test:
287        return MyGame.Example.Test { buf_, flatbuffers.field_vector(buf_, pos_, 22) + i * 4 }
288    def test4_length() -> int:
289        return flatbuffers.field_vector_len(buf_, pos_, 22)
290    def testarrayofstring(i:int) -> string:
291        return flatbuffers.string(buf_, buf_.flatbuffers.field_vector(pos_, 24) + i * 4)
292    def testarrayofstring_length() -> int:
293        return flatbuffers.field_vector_len(buf_, pos_, 24)
294    /// an example documentation comment: this will end up in the generated code
295    /// multiline too
296    def testarrayoftables(i:int) -> MyGame.Example.Monster:
297        return MyGame.Example.Monster { buf_, flatbuffers.indirect(buf_, flatbuffers.field_vector(buf_, pos_, 26) + i * 4) }
298    def testarrayoftables_length() -> int:
299        return flatbuffers.field_vector_len(buf_, pos_, 26)
300    def enemy() -> MyGame.Example.Monster?:
301        let o = flatbuffers.field_table(buf_, pos_, 28)
302        return if o: MyGame.Example.Monster { buf_, o } else: nil
303    def testnestedflatbuffer(i:int) -> int:
304        return read_uint8_le(buf_, buf_.flatbuffers.field_vector(pos_, 30) + i * 1)
305    def testnestedflatbuffer_length() -> int:
306        return flatbuffers.field_vector_len(buf_, pos_, 30)
307    def testempty() -> MyGame.Example.Stat?:
308        let o = flatbuffers.field_table(buf_, pos_, 32)
309        return if o: MyGame.Example.Stat { buf_, o } else: nil
310    def testbool() -> bool:
311        return bool(flatbuffers.field_int8(buf_, pos_, 34, 0))
312    def testhashs32_fnv1() -> int:
313        return flatbuffers.field_int32(buf_, pos_, 36, 0)
314    def testhashu32_fnv1() -> int:
315        return flatbuffers.field_uint32(buf_, pos_, 38, 0)
316    def testhashs64_fnv1() -> int:
317        return flatbuffers.field_int64(buf_, pos_, 40, 0)
318    def testhashu64_fnv1() -> int:
319        return flatbuffers.field_uint64(buf_, pos_, 42, 0)
320    def testhashs32_fnv1a() -> int:
321        return flatbuffers.field_int32(buf_, pos_, 44, 0)
322    def testhashu32_fnv1a() -> int:
323        return flatbuffers.field_uint32(buf_, pos_, 46, 0)
324    def testhashs64_fnv1a() -> int:
325        return flatbuffers.field_int64(buf_, pos_, 48, 0)
326    def testhashu64_fnv1a() -> int:
327        return flatbuffers.field_uint64(buf_, pos_, 50, 0)
328    def testarrayofbools(i:int) -> bool:
329        return read_int8_le(buf_, buf_.flatbuffers.field_vector(pos_, 52) + i * 1)
330    def testarrayofbools_length() -> int:
331        return flatbuffers.field_vector_len(buf_, pos_, 52)
332    def testf() -> float:
333        return flatbuffers.field_float32(buf_, pos_, 54, 3.14159)
334    def testf2() -> float:
335        return flatbuffers.field_float32(buf_, pos_, 56, 3.0)
336    def testf3() -> float:
337        return flatbuffers.field_float32(buf_, pos_, 58, 0.0)
338    def testarrayofstring2(i:int) -> string:
339        return flatbuffers.string(buf_, buf_.flatbuffers.field_vector(pos_, 60) + i * 4)
340    def testarrayofstring2_length() -> int:
341        return flatbuffers.field_vector_len(buf_, pos_, 60)
342    def testarrayofsortedstruct(i:int) -> MyGame.Example.Ability:
343        return MyGame.Example.Ability { buf_, flatbuffers.field_vector(buf_, pos_, 62) + i * 8 }
344    def testarrayofsortedstruct_length() -> int:
345        return flatbuffers.field_vector_len(buf_, pos_, 62)
346    def flex(i:int) -> int:
347        return read_uint8_le(buf_, buf_.flatbuffers.field_vector(pos_, 64) + i * 1)
348    def flex_length() -> int:
349        return flatbuffers.field_vector_len(buf_, pos_, 64)
350    def test5(i:int) -> MyGame.Example.Test:
351        return MyGame.Example.Test { buf_, flatbuffers.field_vector(buf_, pos_, 66) + i * 4 }
352    def test5_length() -> int:
353        return flatbuffers.field_vector_len(buf_, pos_, 66)
354    def vector_of_longs(i:int) -> int:
355        return read_int64_le(buf_, buf_.flatbuffers.field_vector(pos_, 68) + i * 8)
356    def vector_of_longs_length() -> int:
357        return flatbuffers.field_vector_len(buf_, pos_, 68)
358    def vector_of_doubles(i:int) -> float:
359        return read_float64_le(buf_, buf_.flatbuffers.field_vector(pos_, 70) + i * 8)
360    def vector_of_doubles_length() -> int:
361        return flatbuffers.field_vector_len(buf_, pos_, 70)
362    def parent_namespace_test() -> MyGame.InParentNamespace?:
363        let o = flatbuffers.field_table(buf_, pos_, 72)
364        return if o: MyGame.InParentNamespace { buf_, o } else: nil
365    def vector_of_referrables(i:int) -> MyGame.Example.Referrable:
366        return MyGame.Example.Referrable { buf_, flatbuffers.indirect(buf_, flatbuffers.field_vector(buf_, pos_, 74) + i * 4) }
367    def vector_of_referrables_length() -> int:
368        return flatbuffers.field_vector_len(buf_, pos_, 74)
369    def single_weak_reference() -> int:
370        return flatbuffers.field_uint64(buf_, pos_, 76, 0)
371    def vector_of_weak_references(i:int) -> int:
372        return read_uint64_le(buf_, buf_.flatbuffers.field_vector(pos_, 78) + i * 8)
373    def vector_of_weak_references_length() -> int:
374        return flatbuffers.field_vector_len(buf_, pos_, 78)
375    def vector_of_strong_referrables(i:int) -> MyGame.Example.Referrable:
376        return MyGame.Example.Referrable { buf_, flatbuffers.indirect(buf_, flatbuffers.field_vector(buf_, pos_, 80) + i * 4) }
377    def vector_of_strong_referrables_length() -> int:
378        return flatbuffers.field_vector_len(buf_, pos_, 80)
379    def co_owning_reference() -> int:
380        return flatbuffers.field_uint64(buf_, pos_, 82, 0)
381    def vector_of_co_owning_references(i:int) -> int:
382        return read_uint64_le(buf_, buf_.flatbuffers.field_vector(pos_, 84) + i * 8)
383    def vector_of_co_owning_references_length() -> int:
384        return flatbuffers.field_vector_len(buf_, pos_, 84)
385    def non_owning_reference() -> int:
386        return flatbuffers.field_uint64(buf_, pos_, 86, 0)
387    def vector_of_non_owning_references(i:int) -> int:
388        return read_uint64_le(buf_, buf_.flatbuffers.field_vector(pos_, 88) + i * 8)
389    def vector_of_non_owning_references_length() -> int:
390        return flatbuffers.field_vector_len(buf_, pos_, 88)
391    def any_unique_type() -> AnyUniqueAliases:
392        return AnyUniqueAliases(flatbuffers.field_uint8(buf_, pos_, 90, 0))
393    def any_unique_as_M():
394        return MyGame.Example.Monster { buf_, flatbuffers.field_table(buf_, pos_, 92) }
395    def any_unique_as_TS():
396        return MyGame.Example.TestSimpleTableWithEnum { buf_, flatbuffers.field_table(buf_, pos_, 92) }
397    def any_unique_as_M2():
398        return MyGame.Example2.Monster { buf_, flatbuffers.field_table(buf_, pos_, 92) }
399    def any_ambiguous_type() -> AnyAmbiguousAliases:
400        return AnyAmbiguousAliases(flatbuffers.field_uint8(buf_, pos_, 94, 0))
401    def any_ambiguous_as_M1():
402        return MyGame.Example.Monster { buf_, flatbuffers.field_table(buf_, pos_, 96) }
403    def any_ambiguous_as_M2():
404        return MyGame.Example.Monster { buf_, flatbuffers.field_table(buf_, pos_, 96) }
405    def any_ambiguous_as_M3():
406        return MyGame.Example.Monster { buf_, flatbuffers.field_table(buf_, pos_, 96) }
407    def vector_of_enums(i:int) -> Color:
408        return read_uint8_le(buf_, buf_.flatbuffers.field_vector(pos_, 98) + i * 1)
409    def vector_of_enums_length() -> int:
410        return flatbuffers.field_vector_len(buf_, pos_, 98)
411    def signed_enum() -> Race:
412        return Race(flatbuffers.field_int8(buf_, pos_, 100, -1))
413    def testrequirednestedflatbuffer(i:int) -> int:
414        return read_uint8_le(buf_, buf_.flatbuffers.field_vector(pos_, 102) + i * 1)
415    def testrequirednestedflatbuffer_length() -> int:
416        return flatbuffers.field_vector_len(buf_, pos_, 102)
417    def scalar_key_sorted_tables(i:int) -> MyGame.Example.Stat:
418        return MyGame.Example.Stat { buf_, flatbuffers.indirect(buf_, flatbuffers.field_vector(buf_, pos_, 104) + i * 4) }
419    def scalar_key_sorted_tables_length() -> int:
420        return flatbuffers.field_vector_len(buf_, pos_, 104)
421    def native_inline() -> MyGame.Example.Test?:
422        let o = flatbuffers.field_struct(buf_, pos_, 106)
423        return if o: MyGame.Example.Test { buf_, o } else: nil
424    def long_enum_non_enum_default() -> LongEnum:
425        return LongEnum(flatbuffers.field_uint64(buf_, pos_, 108, 0))
426    def long_enum_normal_default() -> LongEnum:
427        return LongEnum(flatbuffers.field_uint64(buf_, pos_, 110, 2))
428    def nan_default() -> float:
429        return flatbuffers.field_float32(buf_, pos_, 112, nan)
430    def inf_default() -> float:
431        return flatbuffers.field_float32(buf_, pos_, 114, inf)
432    def positive_inf_default() -> float:
433        return flatbuffers.field_float32(buf_, pos_, 116, +inf)
434    def infinity_default() -> float:
435        return flatbuffers.field_float32(buf_, pos_, 118, infinity)
436    def positive_infinity_default() -> float:
437        return flatbuffers.field_float32(buf_, pos_, 120, +infinity)
438    def negative_inf_default() -> float:
439        return flatbuffers.field_float32(buf_, pos_, 122, -inf)
440    def negative_infinity_default() -> float:
441        return flatbuffers.field_float32(buf_, pos_, 124, -infinity)
442    def double_inf_default() -> float:
443        return flatbuffers.field_float64(buf_, pos_, 126, inf)
444
445def GetRootAsMonster(buf:string): return Monster { buf, flatbuffers.indirect(buf, 0) }
446
447struct MonsterBuilder:
448    b_:flatbuffers.builder
449    def start():
450        b_.StartObject(62)
451        return this
452    def add_pos(pos:flatbuffers.offset):
453        b_.PrependStructSlot(0, pos)
454        return this
455    def add_mana(mana:int):
456        b_.PrependInt16Slot(1, mana, 150)
457        return this
458    def add_hp(hp:int):
459        b_.PrependInt16Slot(2, hp, 100)
460        return this
461    def add_name(name:flatbuffers.offset):
462        b_.PrependUOffsetTRelativeSlot(3, name)
463        return this
464    def add_inventory(inventory:flatbuffers.offset):
465        b_.PrependUOffsetTRelativeSlot(5, inventory)
466        return this
467    def add_color(color:Color):
468        b_.PrependUint8Slot(6, color, 8)
469        return this
470    def add_test_type(test_type:Any):
471        b_.PrependUint8Slot(7, test_type, 0)
472        return this
473    def add_test(test:flatbuffers.offset):
474        b_.PrependUOffsetTRelativeSlot(8, test)
475        return this
476    def add_test4(test4:flatbuffers.offset):
477        b_.PrependUOffsetTRelativeSlot(9, test4)
478        return this
479    def add_testarrayofstring(testarrayofstring:flatbuffers.offset):
480        b_.PrependUOffsetTRelativeSlot(10, testarrayofstring)
481        return this
482    def add_testarrayoftables(testarrayoftables:flatbuffers.offset):
483        b_.PrependUOffsetTRelativeSlot(11, testarrayoftables)
484        return this
485    def add_enemy(enemy:flatbuffers.offset):
486        b_.PrependUOffsetTRelativeSlot(12, enemy)
487        return this
488    def add_testnestedflatbuffer(testnestedflatbuffer:flatbuffers.offset):
489        b_.PrependUOffsetTRelativeSlot(13, testnestedflatbuffer)
490        return this
491    def add_testempty(testempty:flatbuffers.offset):
492        b_.PrependUOffsetTRelativeSlot(14, testempty)
493        return this
494    def add_testbool(testbool:bool):
495        b_.PrependBoolSlot(15, testbool, 0)
496        return this
497    def add_testhashs32_fnv1(testhashs32_fnv1:int):
498        b_.PrependInt32Slot(16, testhashs32_fnv1, 0)
499        return this
500    def add_testhashu32_fnv1(testhashu32_fnv1:int):
501        b_.PrependUint32Slot(17, testhashu32_fnv1, 0)
502        return this
503    def add_testhashs64_fnv1(testhashs64_fnv1:int):
504        b_.PrependInt64Slot(18, testhashs64_fnv1, 0)
505        return this
506    def add_testhashu64_fnv1(testhashu64_fnv1:int):
507        b_.PrependUint64Slot(19, testhashu64_fnv1, 0)
508        return this
509    def add_testhashs32_fnv1a(testhashs32_fnv1a:int):
510        b_.PrependInt32Slot(20, testhashs32_fnv1a, 0)
511        return this
512    def add_testhashu32_fnv1a(testhashu32_fnv1a:int):
513        b_.PrependUint32Slot(21, testhashu32_fnv1a, 0)
514        return this
515    def add_testhashs64_fnv1a(testhashs64_fnv1a:int):
516        b_.PrependInt64Slot(22, testhashs64_fnv1a, 0)
517        return this
518    def add_testhashu64_fnv1a(testhashu64_fnv1a:int):
519        b_.PrependUint64Slot(23, testhashu64_fnv1a, 0)
520        return this
521    def add_testarrayofbools(testarrayofbools:flatbuffers.offset):
522        b_.PrependUOffsetTRelativeSlot(24, testarrayofbools)
523        return this
524    def add_testf(testf:float):
525        b_.PrependFloat32Slot(25, testf, 3.14159)
526        return this
527    def add_testf2(testf2:float):
528        b_.PrependFloat32Slot(26, testf2, 3.0)
529        return this
530    def add_testf3(testf3:float):
531        b_.PrependFloat32Slot(27, testf3, 0.0)
532        return this
533    def add_testarrayofstring2(testarrayofstring2:flatbuffers.offset):
534        b_.PrependUOffsetTRelativeSlot(28, testarrayofstring2)
535        return this
536    def add_testarrayofsortedstruct(testarrayofsortedstruct:flatbuffers.offset):
537        b_.PrependUOffsetTRelativeSlot(29, testarrayofsortedstruct)
538        return this
539    def add_flex(flex:flatbuffers.offset):
540        b_.PrependUOffsetTRelativeSlot(30, flex)
541        return this
542    def add_test5(test5:flatbuffers.offset):
543        b_.PrependUOffsetTRelativeSlot(31, test5)
544        return this
545    def add_vector_of_longs(vector_of_longs:flatbuffers.offset):
546        b_.PrependUOffsetTRelativeSlot(32, vector_of_longs)
547        return this
548    def add_vector_of_doubles(vector_of_doubles:flatbuffers.offset):
549        b_.PrependUOffsetTRelativeSlot(33, vector_of_doubles)
550        return this
551    def add_parent_namespace_test(parent_namespace_test:flatbuffers.offset):
552        b_.PrependUOffsetTRelativeSlot(34, parent_namespace_test)
553        return this
554    def add_vector_of_referrables(vector_of_referrables:flatbuffers.offset):
555        b_.PrependUOffsetTRelativeSlot(35, vector_of_referrables)
556        return this
557    def add_single_weak_reference(single_weak_reference:int):
558        b_.PrependUint64Slot(36, single_weak_reference, 0)
559        return this
560    def add_vector_of_weak_references(vector_of_weak_references:flatbuffers.offset):
561        b_.PrependUOffsetTRelativeSlot(37, vector_of_weak_references)
562        return this
563    def add_vector_of_strong_referrables(vector_of_strong_referrables:flatbuffers.offset):
564        b_.PrependUOffsetTRelativeSlot(38, vector_of_strong_referrables)
565        return this
566    def add_co_owning_reference(co_owning_reference:int):
567        b_.PrependUint64Slot(39, co_owning_reference, 0)
568        return this
569    def add_vector_of_co_owning_references(vector_of_co_owning_references:flatbuffers.offset):
570        b_.PrependUOffsetTRelativeSlot(40, vector_of_co_owning_references)
571        return this
572    def add_non_owning_reference(non_owning_reference:int):
573        b_.PrependUint64Slot(41, non_owning_reference, 0)
574        return this
575    def add_vector_of_non_owning_references(vector_of_non_owning_references:flatbuffers.offset):
576        b_.PrependUOffsetTRelativeSlot(42, vector_of_non_owning_references)
577        return this
578    def add_any_unique_type(any_unique_type:AnyUniqueAliases):
579        b_.PrependUint8Slot(43, any_unique_type, 0)
580        return this
581    def add_any_unique(any_unique:flatbuffers.offset):
582        b_.PrependUOffsetTRelativeSlot(44, any_unique)
583        return this
584    def add_any_ambiguous_type(any_ambiguous_type:AnyAmbiguousAliases):
585        b_.PrependUint8Slot(45, any_ambiguous_type, 0)
586        return this
587    def add_any_ambiguous(any_ambiguous:flatbuffers.offset):
588        b_.PrependUOffsetTRelativeSlot(46, any_ambiguous)
589        return this
590    def add_vector_of_enums(vector_of_enums:flatbuffers.offset):
591        b_.PrependUOffsetTRelativeSlot(47, vector_of_enums)
592        return this
593    def add_signed_enum(signed_enum:Race):
594        b_.PrependInt8Slot(48, signed_enum, -1)
595        return this
596    def add_testrequirednestedflatbuffer(testrequirednestedflatbuffer:flatbuffers.offset):
597        b_.PrependUOffsetTRelativeSlot(49, testrequirednestedflatbuffer)
598        return this
599    def add_scalar_key_sorted_tables(scalar_key_sorted_tables:flatbuffers.offset):
600        b_.PrependUOffsetTRelativeSlot(50, scalar_key_sorted_tables)
601        return this
602    def add_native_inline(native_inline:flatbuffers.offset):
603        b_.PrependStructSlot(51, native_inline)
604        return this
605    def add_long_enum_non_enum_default(long_enum_non_enum_default:LongEnum):
606        b_.PrependUint64Slot(52, long_enum_non_enum_default, 0)
607        return this
608    def add_long_enum_normal_default(long_enum_normal_default:LongEnum):
609        b_.PrependUint64Slot(53, long_enum_normal_default, 2)
610        return this
611    def add_nan_default(nan_default:float):
612        b_.PrependFloat32Slot(54, nan_default, nan)
613        return this
614    def add_inf_default(inf_default:float):
615        b_.PrependFloat32Slot(55, inf_default, inf)
616        return this
617    def add_positive_inf_default(positive_inf_default:float):
618        b_.PrependFloat32Slot(56, positive_inf_default, +inf)
619        return this
620    def add_infinity_default(infinity_default:float):
621        b_.PrependFloat32Slot(57, infinity_default, infinity)
622        return this
623    def add_positive_infinity_default(positive_infinity_default:float):
624        b_.PrependFloat32Slot(58, positive_infinity_default, +infinity)
625        return this
626    def add_negative_inf_default(negative_inf_default:float):
627        b_.PrependFloat32Slot(59, negative_inf_default, -inf)
628        return this
629    def add_negative_infinity_default(negative_infinity_default:float):
630        b_.PrependFloat32Slot(60, negative_infinity_default, -infinity)
631        return this
632    def add_double_inf_default(double_inf_default:float):
633        b_.PrependFloat64Slot(61, double_inf_default, inf)
634        return this
635    def end():
636        return b_.EndObject()
637
638def MonsterStartInventoryVector(b_:flatbuffers.builder, n_:int):
639    b_.StartVector(1, n_, 1)
640def MonsterCreateInventoryVector(b_:flatbuffers.builder, v_:[int]):
641    b_.StartVector(1, v_.length, 1)
642    reverse(v_) e_: b_.PrependUint8(e_)
643    return b_.EndVector(v_.length)
644
645def MonsterStartTest4Vector(b_:flatbuffers.builder, n_:int):
646    b_.StartVector(4, n_, 2)
647
648def MonsterStartTestarrayofstringVector(b_:flatbuffers.builder, n_:int):
649    b_.StartVector(4, n_, 4)
650def MonsterCreateTestarrayofstringVector(b_:flatbuffers.builder, v_:[flatbuffers.offset]):
651    b_.StartVector(4, v_.length, 4)
652    reverse(v_) e_: b_.PrependUOffsetTRelative(e_)
653    return b_.EndVector(v_.length)
654
655def MonsterStartTestarrayoftablesVector(b_:flatbuffers.builder, n_:int):
656    b_.StartVector(4, n_, 4)
657def MonsterCreateTestarrayoftablesVector(b_:flatbuffers.builder, v_:[flatbuffers.offset]):
658    b_.StartVector(4, v_.length, 4)
659    reverse(v_) e_: b_.PrependUOffsetTRelative(e_)
660    return b_.EndVector(v_.length)
661
662def MonsterStartTestnestedflatbufferVector(b_:flatbuffers.builder, n_:int):
663    b_.StartVector(1, n_, 1)
664def MonsterCreateTestnestedflatbufferVector(b_:flatbuffers.builder, v_:[int]):
665    b_.StartVector(1, v_.length, 1)
666    reverse(v_) e_: b_.PrependUint8(e_)
667    return b_.EndVector(v_.length)
668
669def MonsterStartTestarrayofboolsVector(b_:flatbuffers.builder, n_:int):
670    b_.StartVector(1, n_, 1)
671def MonsterCreateTestarrayofboolsVector(b_:flatbuffers.builder, v_:[bool]):
672    b_.StartVector(1, v_.length, 1)
673    reverse(v_) e_: b_.PrependBool(e_)
674    return b_.EndVector(v_.length)
675
676def MonsterStartTestarrayofstring2Vector(b_:flatbuffers.builder, n_:int):
677    b_.StartVector(4, n_, 4)
678def MonsterCreateTestarrayofstring2Vector(b_:flatbuffers.builder, v_:[flatbuffers.offset]):
679    b_.StartVector(4, v_.length, 4)
680    reverse(v_) e_: b_.PrependUOffsetTRelative(e_)
681    return b_.EndVector(v_.length)
682
683def MonsterStartTestarrayofsortedstructVector(b_:flatbuffers.builder, n_:int):
684    b_.StartVector(8, n_, 4)
685
686def MonsterStartFlexVector(b_:flatbuffers.builder, n_:int):
687    b_.StartVector(1, n_, 1)
688def MonsterCreateFlexVector(b_:flatbuffers.builder, v_:[int]):
689    b_.StartVector(1, v_.length, 1)
690    reverse(v_) e_: b_.PrependUint8(e_)
691    return b_.EndVector(v_.length)
692
693def MonsterStartTest5Vector(b_:flatbuffers.builder, n_:int):
694    b_.StartVector(4, n_, 2)
695
696def MonsterStartVectorOfLongsVector(b_:flatbuffers.builder, n_:int):
697    b_.StartVector(8, n_, 8)
698def MonsterCreateVectorOfLongsVector(b_:flatbuffers.builder, v_:[int]):
699    b_.StartVector(8, v_.length, 8)
700    reverse(v_) e_: b_.PrependInt64(e_)
701    return b_.EndVector(v_.length)
702
703def MonsterStartVectorOfDoublesVector(b_:flatbuffers.builder, n_:int):
704    b_.StartVector(8, n_, 8)
705def MonsterCreateVectorOfDoublesVector(b_:flatbuffers.builder, v_:[float]):
706    b_.StartVector(8, v_.length, 8)
707    reverse(v_) e_: b_.PrependFloat64(e_)
708    return b_.EndVector(v_.length)
709
710def MonsterStartVectorOfReferrablesVector(b_:flatbuffers.builder, n_:int):
711    b_.StartVector(4, n_, 4)
712def MonsterCreateVectorOfReferrablesVector(b_:flatbuffers.builder, v_:[flatbuffers.offset]):
713    b_.StartVector(4, v_.length, 4)
714    reverse(v_) e_: b_.PrependUOffsetTRelative(e_)
715    return b_.EndVector(v_.length)
716
717def MonsterStartVectorOfWeakReferencesVector(b_:flatbuffers.builder, n_:int):
718    b_.StartVector(8, n_, 8)
719def MonsterCreateVectorOfWeakReferencesVector(b_:flatbuffers.builder, v_:[int]):
720    b_.StartVector(8, v_.length, 8)
721    reverse(v_) e_: b_.PrependUint64(e_)
722    return b_.EndVector(v_.length)
723
724def MonsterStartVectorOfStrongReferrablesVector(b_:flatbuffers.builder, n_:int):
725    b_.StartVector(4, n_, 4)
726def MonsterCreateVectorOfStrongReferrablesVector(b_:flatbuffers.builder, v_:[flatbuffers.offset]):
727    b_.StartVector(4, v_.length, 4)
728    reverse(v_) e_: b_.PrependUOffsetTRelative(e_)
729    return b_.EndVector(v_.length)
730
731def MonsterStartVectorOfCoOwningReferencesVector(b_:flatbuffers.builder, n_:int):
732    b_.StartVector(8, n_, 8)
733def MonsterCreateVectorOfCoOwningReferencesVector(b_:flatbuffers.builder, v_:[int]):
734    b_.StartVector(8, v_.length, 8)
735    reverse(v_) e_: b_.PrependUint64(e_)
736    return b_.EndVector(v_.length)
737
738def MonsterStartVectorOfNonOwningReferencesVector(b_:flatbuffers.builder, n_:int):
739    b_.StartVector(8, n_, 8)
740def MonsterCreateVectorOfNonOwningReferencesVector(b_:flatbuffers.builder, v_:[int]):
741    b_.StartVector(8, v_.length, 8)
742    reverse(v_) e_: b_.PrependUint64(e_)
743    return b_.EndVector(v_.length)
744
745def MonsterStartVectorOfEnumsVector(b_:flatbuffers.builder, n_:int):
746    b_.StartVector(1, n_, 1)
747def MonsterCreateVectorOfEnumsVector(b_:flatbuffers.builder, v_:[Color]):
748    b_.StartVector(1, v_.length, 1)
749    reverse(v_) e_: b_.PrependUint8(e_)
750    return b_.EndVector(v_.length)
751
752def MonsterStartTestrequirednestedflatbufferVector(b_:flatbuffers.builder, n_:int):
753    b_.StartVector(1, n_, 1)
754def MonsterCreateTestrequirednestedflatbufferVector(b_:flatbuffers.builder, v_:[int]):
755    b_.StartVector(1, v_.length, 1)
756    reverse(v_) e_: b_.PrependUint8(e_)
757    return b_.EndVector(v_.length)
758
759def MonsterStartScalarKeySortedTablesVector(b_:flatbuffers.builder, n_:int):
760    b_.StartVector(4, n_, 4)
761def MonsterCreateScalarKeySortedTablesVector(b_:flatbuffers.builder, v_:[flatbuffers.offset]):
762    b_.StartVector(4, v_.length, 4)
763    reverse(v_) e_: b_.PrependUOffsetTRelative(e_)
764    return b_.EndVector(v_.length)
765
766class TypeAliases : flatbuffers.handle
767    def i8() -> int:
768        return flatbuffers.field_int8(buf_, pos_, 4, 0)
769    def u8() -> int:
770        return flatbuffers.field_uint8(buf_, pos_, 6, 0)
771    def i16() -> int:
772        return flatbuffers.field_int16(buf_, pos_, 8, 0)
773    def u16() -> int:
774        return flatbuffers.field_uint16(buf_, pos_, 10, 0)
775    def i32() -> int:
776        return flatbuffers.field_int32(buf_, pos_, 12, 0)
777    def u32() -> int:
778        return flatbuffers.field_uint32(buf_, pos_, 14, 0)
779    def i64() -> int:
780        return flatbuffers.field_int64(buf_, pos_, 16, 0)
781    def u64() -> int:
782        return flatbuffers.field_uint64(buf_, pos_, 18, 0)
783    def f32() -> float:
784        return flatbuffers.field_float32(buf_, pos_, 20, 0.0)
785    def f64() -> float:
786        return flatbuffers.field_float64(buf_, pos_, 22, 0.0)
787    def v8(i:int) -> int:
788        return read_int8_le(buf_, buf_.flatbuffers.field_vector(pos_, 24) + i * 1)
789    def v8_length() -> int:
790        return flatbuffers.field_vector_len(buf_, pos_, 24)
791    def vf64(i:int) -> float:
792        return read_float64_le(buf_, buf_.flatbuffers.field_vector(pos_, 26) + i * 8)
793    def vf64_length() -> int:
794        return flatbuffers.field_vector_len(buf_, pos_, 26)
795
796def GetRootAsTypeAliases(buf:string): return TypeAliases { buf, flatbuffers.indirect(buf, 0) }
797
798struct TypeAliasesBuilder:
799    b_:flatbuffers.builder
800    def start():
801        b_.StartObject(12)
802        return this
803    def add_i8(i8:int):
804        b_.PrependInt8Slot(0, i8, 0)
805        return this
806    def add_u8(u8:int):
807        b_.PrependUint8Slot(1, u8, 0)
808        return this
809    def add_i16(i16:int):
810        b_.PrependInt16Slot(2, i16, 0)
811        return this
812    def add_u16(u16:int):
813        b_.PrependUint16Slot(3, u16, 0)
814        return this
815    def add_i32(i32:int):
816        b_.PrependInt32Slot(4, i32, 0)
817        return this
818    def add_u32(u32:int):
819        b_.PrependUint32Slot(5, u32, 0)
820        return this
821    def add_i64(i64:int):
822        b_.PrependInt64Slot(6, i64, 0)
823        return this
824    def add_u64(u64:int):
825        b_.PrependUint64Slot(7, u64, 0)
826        return this
827    def add_f32(f32:float):
828        b_.PrependFloat32Slot(8, f32, 0.0)
829        return this
830    def add_f64(f64:float):
831        b_.PrependFloat64Slot(9, f64, 0.0)
832        return this
833    def add_v8(v8:flatbuffers.offset):
834        b_.PrependUOffsetTRelativeSlot(10, v8)
835        return this
836    def add_vf64(vf64:flatbuffers.offset):
837        b_.PrependUOffsetTRelativeSlot(11, vf64)
838        return this
839    def end():
840        return b_.EndObject()
841
842def TypeAliasesStartV8Vector(b_:flatbuffers.builder, n_:int):
843    b_.StartVector(1, n_, 1)
844def TypeAliasesCreateV8Vector(b_:flatbuffers.builder, v_:[int]):
845    b_.StartVector(1, v_.length, 1)
846    reverse(v_) e_: b_.PrependInt8(e_)
847    return b_.EndVector(v_.length)
848
849def TypeAliasesStartVf64Vector(b_:flatbuffers.builder, n_:int):
850    b_.StartVector(8, n_, 8)
851def TypeAliasesCreateVf64Vector(b_:flatbuffers.builder, v_:[float]):
852    b_.StartVector(8, v_.length, 8)
853    reverse(v_) e_: b_.PrependFloat64(e_)
854    return b_.EndVector(v_.length)
855
856