1// automatically generated by the FlatBuffers compiler, do not modify
2// ignore_for_file: unused_import, unused_field, unused_local_variable
3
4library my_game.example;
5
6import 'dart:typed_data' show Uint8List;
7import 'package:flat_buffers/flat_buffers.dart' as fb;
8
9import './monster_test_my_game_generated.dart' as my_game;
10import './monster_test_my_game.example2_generated.dart' as my_game_example2;
11
12///  Composite components of Monster color.
13class Color {
14  final int value;
15  const Color._(this.value);
16
17  factory Color.fromValue(int value) {
18    if (value == null) value = 0;
19    if (!values.containsKey(value)) {
20      throw new StateError('Invalid value $value for bit flag enum Color');
21    }
22    return values[value];
23  }
24
25  static bool containsValue(int value) => values.containsKey(value);
26
27  static const Color Red = const Color._(1);
28
29  ///  \brief color Green
30  ///  Green is bit_flag with value (1u << 1)
31  static const Color Green = const Color._(2);
32
33  ///  \brief color Blue (1u << 3)
34  static const Color Blue = const Color._(8);
35  static get values => {1: Red,2: Green,8: Blue,};
36
37  static const fb.Reader<Color> reader = const _ColorReader();
38
39  @override
40  String toString() {
41    return 'Color{value: $value}';
42  }
43}
44
45class _ColorReader extends fb.Reader<Color> {
46  const _ColorReader();
47
48  @override
49  int get size => 1;
50
51  @override
52  Color read(fb.BufferContext bc, int offset) =>
53      new Color.fromValue(const fb.Uint8Reader().read(bc, offset));
54}
55
56class AnyTypeId {
57  final int value;
58  const AnyTypeId._(this.value);
59
60  factory AnyTypeId.fromValue(int value) {
61    if (value == null) value = 0;
62    if (!values.containsKey(value)) {
63      throw new StateError('Invalid value $value for bit flag enum AnyTypeId');
64    }
65    return values[value];
66  }
67
68  static const int minValue = 0;
69  static const int maxValue = 3;
70  static bool containsValue(int value) => values.containsKey(value);
71
72  static const AnyTypeId NONE = const AnyTypeId._(0);
73  static const AnyTypeId Monster = const AnyTypeId._(1);
74  static const AnyTypeId TestSimpleTableWithEnum = const AnyTypeId._(2);
75  static const AnyTypeId MyGame_Example2_Monster = const AnyTypeId._(3);
76  static get values => {0: NONE,1: Monster,2: TestSimpleTableWithEnum,3: MyGame_Example2_Monster,};
77
78  static const fb.Reader<AnyTypeId> reader = const _AnyTypeIdReader();
79
80  @override
81  String toString() {
82    return 'AnyTypeId{value: $value}';
83  }
84}
85
86class _AnyTypeIdReader extends fb.Reader<AnyTypeId> {
87  const _AnyTypeIdReader();
88
89  @override
90  int get size => 1;
91
92  @override
93  AnyTypeId read(fb.BufferContext bc, int offset) =>
94      new AnyTypeId.fromValue(const fb.Uint8Reader().read(bc, offset));
95}
96
97class AnyUniqueAliasesTypeId {
98  final int value;
99  const AnyUniqueAliasesTypeId._(this.value);
100
101  factory AnyUniqueAliasesTypeId.fromValue(int value) {
102    if (value == null) value = 0;
103    if (!values.containsKey(value)) {
104      throw new StateError('Invalid value $value for bit flag enum AnyUniqueAliasesTypeId');
105    }
106    return values[value];
107  }
108
109  static const int minValue = 0;
110  static const int maxValue = 3;
111  static bool containsValue(int value) => values.containsKey(value);
112
113  static const AnyUniqueAliasesTypeId NONE = const AnyUniqueAliasesTypeId._(0);
114  static const AnyUniqueAliasesTypeId M = const AnyUniqueAliasesTypeId._(1);
115  static const AnyUniqueAliasesTypeId TS = const AnyUniqueAliasesTypeId._(2);
116  static const AnyUniqueAliasesTypeId M2 = const AnyUniqueAliasesTypeId._(3);
117  static get values => {0: NONE,1: M,2: TS,3: M2,};
118
119  static const fb.Reader<AnyUniqueAliasesTypeId> reader = const _AnyUniqueAliasesTypeIdReader();
120
121  @override
122  String toString() {
123    return 'AnyUniqueAliasesTypeId{value: $value}';
124  }
125}
126
127class _AnyUniqueAliasesTypeIdReader extends fb.Reader<AnyUniqueAliasesTypeId> {
128  const _AnyUniqueAliasesTypeIdReader();
129
130  @override
131  int get size => 1;
132
133  @override
134  AnyUniqueAliasesTypeId read(fb.BufferContext bc, int offset) =>
135      new AnyUniqueAliasesTypeId.fromValue(const fb.Uint8Reader().read(bc, offset));
136}
137
138class AnyAmbiguousAliasesTypeId {
139  final int value;
140  const AnyAmbiguousAliasesTypeId._(this.value);
141
142  factory AnyAmbiguousAliasesTypeId.fromValue(int value) {
143    if (value == null) value = 0;
144    if (!values.containsKey(value)) {
145      throw new StateError('Invalid value $value for bit flag enum AnyAmbiguousAliasesTypeId');
146    }
147    return values[value];
148  }
149
150  static const int minValue = 0;
151  static const int maxValue = 3;
152  static bool containsValue(int value) => values.containsKey(value);
153
154  static const AnyAmbiguousAliasesTypeId NONE = const AnyAmbiguousAliasesTypeId._(0);
155  static const AnyAmbiguousAliasesTypeId M1 = const AnyAmbiguousAliasesTypeId._(1);
156  static const AnyAmbiguousAliasesTypeId M2 = const AnyAmbiguousAliasesTypeId._(2);
157  static const AnyAmbiguousAliasesTypeId M3 = const AnyAmbiguousAliasesTypeId._(3);
158  static get values => {0: NONE,1: M1,2: M2,3: M3,};
159
160  static const fb.Reader<AnyAmbiguousAliasesTypeId> reader = const _AnyAmbiguousAliasesTypeIdReader();
161
162  @override
163  String toString() {
164    return 'AnyAmbiguousAliasesTypeId{value: $value}';
165  }
166}
167
168class _AnyAmbiguousAliasesTypeIdReader extends fb.Reader<AnyAmbiguousAliasesTypeId> {
169  const _AnyAmbiguousAliasesTypeIdReader();
170
171  @override
172  int get size => 1;
173
174  @override
175  AnyAmbiguousAliasesTypeId read(fb.BufferContext bc, int offset) =>
176      new AnyAmbiguousAliasesTypeId.fromValue(const fb.Uint8Reader().read(bc, offset));
177}
178
179class Test {
180  Test._(this._bc, this._bcOffset);
181
182  static const fb.Reader<Test> reader = const _TestReader();
183
184  final fb.BufferContext _bc;
185  final int _bcOffset;
186
187  int get a => const fb.Int16Reader().read(_bc, _bcOffset + 0);
188  int get b => const fb.Int8Reader().read(_bc, _bcOffset + 2);
189
190  @override
191  String toString() {
192    return 'Test{a: $a, b: $b}';
193  }
194}
195
196class _TestReader extends fb.StructReader<Test> {
197  const _TestReader();
198
199  @override
200  int get size => 4;
201
202  @override
203  Test createObject(fb.BufferContext bc, int offset) =>
204    new Test._(bc, offset);
205}
206
207class TestBuilder {
208  TestBuilder(this.fbBuilder) {
209    assert(fbBuilder != null);
210  }
211
212  final fb.Builder fbBuilder;
213
214  int finish(int a, int b) {
215    fbBuilder.pad(1);
216    fbBuilder.putInt8(b);
217    fbBuilder.putInt16(a);
218    return fbBuilder.offset;
219  }
220
221}
222
223class TestObjectBuilder extends fb.ObjectBuilder {
224  final int _a;
225  final int _b;
226
227  TestObjectBuilder({
228    int a,
229    int b,
230  })
231      : _a = a,
232        _b = b;
233
234  /// Finish building, and store into the [fbBuilder].
235  @override
236  int finish(
237    fb.Builder fbBuilder) {
238    assert(fbBuilder != null);
239
240    fbBuilder.pad(1);
241    fbBuilder.putInt8(_b);
242    fbBuilder.putInt16(_a);
243    return fbBuilder.offset;
244  }
245
246  /// Convenience method to serialize to byte list.
247  @override
248  Uint8List toBytes([String fileIdentifier]) {
249    fb.Builder fbBuilder = new fb.Builder();
250    int offset = finish(fbBuilder);
251    return fbBuilder.finish(offset, fileIdentifier);
252  }
253}
254class TestSimpleTableWithEnum {
255  TestSimpleTableWithEnum._(this._bc, this._bcOffset);
256  factory TestSimpleTableWithEnum(List<int> bytes) {
257    fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
258    return reader.read(rootRef, 0);
259  }
260
261  static const fb.Reader<TestSimpleTableWithEnum> reader = const _TestSimpleTableWithEnumReader();
262
263  final fb.BufferContext _bc;
264  final int _bcOffset;
265
266  Color get color => new Color.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 4, 2));
267
268  @override
269  String toString() {
270    return 'TestSimpleTableWithEnum{color: $color}';
271  }
272}
273
274class _TestSimpleTableWithEnumReader extends fb.TableReader<TestSimpleTableWithEnum> {
275  const _TestSimpleTableWithEnumReader();
276
277  @override
278  TestSimpleTableWithEnum createObject(fb.BufferContext bc, int offset) =>
279    new TestSimpleTableWithEnum._(bc, offset);
280}
281
282class TestSimpleTableWithEnumBuilder {
283  TestSimpleTableWithEnumBuilder(this.fbBuilder) {
284    assert(fbBuilder != null);
285  }
286
287  final fb.Builder fbBuilder;
288
289  void begin() {
290    fbBuilder.startTable();
291  }
292
293  int addColor(Color color) {
294    fbBuilder.addUint8(0, color?.value);
295    return fbBuilder.offset;
296  }
297
298  int finish() {
299    return fbBuilder.endTable();
300  }
301}
302
303class TestSimpleTableWithEnumObjectBuilder extends fb.ObjectBuilder {
304  final Color _color;
305
306  TestSimpleTableWithEnumObjectBuilder({
307    Color color,
308  })
309      : _color = color;
310
311  /// Finish building, and store into the [fbBuilder].
312  @override
313  int finish(
314    fb.Builder fbBuilder) {
315    assert(fbBuilder != null);
316
317    fbBuilder.startTable();
318    fbBuilder.addUint8(0, _color?.value);
319    return fbBuilder.endTable();
320  }
321
322  /// Convenience method to serialize to byte list.
323  @override
324  Uint8List toBytes([String fileIdentifier]) {
325    fb.Builder fbBuilder = new fb.Builder();
326    int offset = finish(fbBuilder);
327    return fbBuilder.finish(offset, fileIdentifier);
328  }
329}
330class Vec3 {
331  Vec3._(this._bc, this._bcOffset);
332
333  static const fb.Reader<Vec3> reader = const _Vec3Reader();
334
335  final fb.BufferContext _bc;
336  final int _bcOffset;
337
338  double get x => const fb.Float32Reader().read(_bc, _bcOffset + 0);
339  double get y => const fb.Float32Reader().read(_bc, _bcOffset + 4);
340  double get z => const fb.Float32Reader().read(_bc, _bcOffset + 8);
341  double get test1 => const fb.Float64Reader().read(_bc, _bcOffset + 16);
342  Color get test2 => new Color.fromValue(const fb.Uint8Reader().read(_bc, _bcOffset + 24));
343  Test get test3 => Test.reader.read(_bc, _bcOffset + 26);
344
345  @override
346  String toString() {
347    return 'Vec3{x: $x, y: $y, z: $z, test1: $test1, test2: $test2, test3: $test3}';
348  }
349}
350
351class _Vec3Reader extends fb.StructReader<Vec3> {
352  const _Vec3Reader();
353
354  @override
355  int get size => 32;
356
357  @override
358  Vec3 createObject(fb.BufferContext bc, int offset) =>
359    new Vec3._(bc, offset);
360}
361
362class Vec3Builder {
363  Vec3Builder(this.fbBuilder) {
364    assert(fbBuilder != null);
365  }
366
367  final fb.Builder fbBuilder;
368
369  int finish(double x, double y, double z, double test1, Color test2, fb.StructBuilder test3) {
370    fbBuilder.pad(2);
371    test3();
372    fbBuilder.pad(1);
373    fbBuilder.putUint8(test2?.value);
374    fbBuilder.putFloat64(test1);
375    fbBuilder.pad(4);
376    fbBuilder.putFloat32(z);
377    fbBuilder.putFloat32(y);
378    fbBuilder.putFloat32(x);
379    return fbBuilder.offset;
380  }
381
382}
383
384class Vec3ObjectBuilder extends fb.ObjectBuilder {
385  final double _x;
386  final double _y;
387  final double _z;
388  final double _test1;
389  final Color _test2;
390  final TestObjectBuilder _test3;
391
392  Vec3ObjectBuilder({
393    double x,
394    double y,
395    double z,
396    double test1,
397    Color test2,
398    TestObjectBuilder test3,
399  })
400      : _x = x,
401        _y = y,
402        _z = z,
403        _test1 = test1,
404        _test2 = test2,
405        _test3 = test3;
406
407  /// Finish building, and store into the [fbBuilder].
408  @override
409  int finish(
410    fb.Builder fbBuilder) {
411    assert(fbBuilder != null);
412
413    fbBuilder.pad(2);
414    _test3.finish(fbBuilder);
415    fbBuilder.pad(1);
416    fbBuilder.putUint8(_test2?.value);
417    fbBuilder.putFloat64(_test1);
418    fbBuilder.pad(4);
419    fbBuilder.putFloat32(_z);
420    fbBuilder.putFloat32(_y);
421    fbBuilder.putFloat32(_x);
422    return fbBuilder.offset;
423  }
424
425  /// Convenience method to serialize to byte list.
426  @override
427  Uint8List toBytes([String fileIdentifier]) {
428    fb.Builder fbBuilder = new fb.Builder();
429    int offset = finish(fbBuilder);
430    return fbBuilder.finish(offset, fileIdentifier);
431  }
432}
433class Ability {
434  Ability._(this._bc, this._bcOffset);
435
436  static const fb.Reader<Ability> reader = const _AbilityReader();
437
438  final fb.BufferContext _bc;
439  final int _bcOffset;
440
441  int get id => const fb.Uint32Reader().read(_bc, _bcOffset + 0);
442  int get distance => const fb.Uint32Reader().read(_bc, _bcOffset + 4);
443
444  @override
445  String toString() {
446    return 'Ability{id: $id, distance: $distance}';
447  }
448}
449
450class _AbilityReader extends fb.StructReader<Ability> {
451  const _AbilityReader();
452
453  @override
454  int get size => 8;
455
456  @override
457  Ability createObject(fb.BufferContext bc, int offset) =>
458    new Ability._(bc, offset);
459}
460
461class AbilityBuilder {
462  AbilityBuilder(this.fbBuilder) {
463    assert(fbBuilder != null);
464  }
465
466  final fb.Builder fbBuilder;
467
468  int finish(int id, int distance) {
469    fbBuilder.putUint32(distance);
470    fbBuilder.putUint32(id);
471    return fbBuilder.offset;
472  }
473
474}
475
476class AbilityObjectBuilder extends fb.ObjectBuilder {
477  final int _id;
478  final int _distance;
479
480  AbilityObjectBuilder({
481    int id,
482    int distance,
483  })
484      : _id = id,
485        _distance = distance;
486
487  /// Finish building, and store into the [fbBuilder].
488  @override
489  int finish(
490    fb.Builder fbBuilder) {
491    assert(fbBuilder != null);
492
493    fbBuilder.putUint32(_distance);
494    fbBuilder.putUint32(_id);
495    return fbBuilder.offset;
496  }
497
498  /// Convenience method to serialize to byte list.
499  @override
500  Uint8List toBytes([String fileIdentifier]) {
501    fb.Builder fbBuilder = new fb.Builder();
502    int offset = finish(fbBuilder);
503    return fbBuilder.finish(offset, fileIdentifier);
504  }
505}
506class Stat {
507  Stat._(this._bc, this._bcOffset);
508  factory Stat(List<int> bytes) {
509    fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
510    return reader.read(rootRef, 0);
511  }
512
513  static const fb.Reader<Stat> reader = const _StatReader();
514
515  final fb.BufferContext _bc;
516  final int _bcOffset;
517
518  String get id => const fb.StringReader().vTableGet(_bc, _bcOffset, 4, null);
519  int get val => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 6, 0);
520  int get count => const fb.Uint16Reader().vTableGet(_bc, _bcOffset, 8, 0);
521
522  @override
523  String toString() {
524    return 'Stat{id: $id, val: $val, count: $count}';
525  }
526}
527
528class _StatReader extends fb.TableReader<Stat> {
529  const _StatReader();
530
531  @override
532  Stat createObject(fb.BufferContext bc, int offset) =>
533    new Stat._(bc, offset);
534}
535
536class StatBuilder {
537  StatBuilder(this.fbBuilder) {
538    assert(fbBuilder != null);
539  }
540
541  final fb.Builder fbBuilder;
542
543  void begin() {
544    fbBuilder.startTable();
545  }
546
547  int addIdOffset(int offset) {
548    fbBuilder.addOffset(0, offset);
549    return fbBuilder.offset;
550  }
551  int addVal(int val) {
552    fbBuilder.addInt64(1, val);
553    return fbBuilder.offset;
554  }
555  int addCount(int count) {
556    fbBuilder.addUint16(2, count);
557    return fbBuilder.offset;
558  }
559
560  int finish() {
561    return fbBuilder.endTable();
562  }
563}
564
565class StatObjectBuilder extends fb.ObjectBuilder {
566  final String _id;
567  final int _val;
568  final int _count;
569
570  StatObjectBuilder({
571    String id,
572    int val,
573    int count,
574  })
575      : _id = id,
576        _val = val,
577        _count = count;
578
579  /// Finish building, and store into the [fbBuilder].
580  @override
581  int finish(
582    fb.Builder fbBuilder) {
583    assert(fbBuilder != null);
584    final int idOffset = fbBuilder.writeString(_id);
585
586    fbBuilder.startTable();
587    if (idOffset != null) {
588      fbBuilder.addOffset(0, idOffset);
589    }
590    fbBuilder.addInt64(1, _val);
591    fbBuilder.addUint16(2, _count);
592    return fbBuilder.endTable();
593  }
594
595  /// Convenience method to serialize to byte list.
596  @override
597  Uint8List toBytes([String fileIdentifier]) {
598    fb.Builder fbBuilder = new fb.Builder();
599    int offset = finish(fbBuilder);
600    return fbBuilder.finish(offset, fileIdentifier);
601  }
602}
603class Referrable {
604  Referrable._(this._bc, this._bcOffset);
605  factory Referrable(List<int> bytes) {
606    fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
607    return reader.read(rootRef, 0);
608  }
609
610  static const fb.Reader<Referrable> reader = const _ReferrableReader();
611
612  final fb.BufferContext _bc;
613  final int _bcOffset;
614
615  int get id => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 4, 0);
616
617  @override
618  String toString() {
619    return 'Referrable{id: $id}';
620  }
621}
622
623class _ReferrableReader extends fb.TableReader<Referrable> {
624  const _ReferrableReader();
625
626  @override
627  Referrable createObject(fb.BufferContext bc, int offset) =>
628    new Referrable._(bc, offset);
629}
630
631class ReferrableBuilder {
632  ReferrableBuilder(this.fbBuilder) {
633    assert(fbBuilder != null);
634  }
635
636  final fb.Builder fbBuilder;
637
638  void begin() {
639    fbBuilder.startTable();
640  }
641
642  int addId(int id) {
643    fbBuilder.addUint64(0, id);
644    return fbBuilder.offset;
645  }
646
647  int finish() {
648    return fbBuilder.endTable();
649  }
650}
651
652class ReferrableObjectBuilder extends fb.ObjectBuilder {
653  final int _id;
654
655  ReferrableObjectBuilder({
656    int id,
657  })
658      : _id = id;
659
660  /// Finish building, and store into the [fbBuilder].
661  @override
662  int finish(
663    fb.Builder fbBuilder) {
664    assert(fbBuilder != null);
665
666    fbBuilder.startTable();
667    fbBuilder.addUint64(0, _id);
668    return fbBuilder.endTable();
669  }
670
671  /// Convenience method to serialize to byte list.
672  @override
673  Uint8List toBytes([String fileIdentifier]) {
674    fb.Builder fbBuilder = new fb.Builder();
675    int offset = finish(fbBuilder);
676    return fbBuilder.finish(offset, fileIdentifier);
677  }
678}
679///  an example documentation comment: monster object
680class Monster {
681  Monster._(this._bc, this._bcOffset);
682  factory Monster(List<int> bytes) {
683    fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
684    return reader.read(rootRef, 0);
685  }
686
687  static const fb.Reader<Monster> reader = const _MonsterReader();
688
689  final fb.BufferContext _bc;
690  final int _bcOffset;
691
692  Vec3 get pos => Vec3.reader.vTableGet(_bc, _bcOffset, 4, null);
693  int get mana => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 150);
694  int get hp => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 100);
695  String get name => const fb.StringReader().vTableGet(_bc, _bcOffset, 10, null);
696  List<int> get inventory => const fb.ListReader<int>(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 14, null);
697  Color get color => new Color.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 16, 8));
698  AnyTypeId get testType => new AnyTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 18, 0));
699  dynamic get test {
700    switch (testType?.value) {
701      case 1: return Monster.reader.vTableGet(_bc, _bcOffset, 20, null);
702      case 2: return TestSimpleTableWithEnum.reader.vTableGet(_bc, _bcOffset, 20, null);
703      case 3: return my_game_example2.Monster.reader.vTableGet(_bc, _bcOffset, 20, null);
704      default: return null;
705    }
706  }
707  List<Test> get test4 => const fb.ListReader<Test>(Test.reader).vTableGet(_bc, _bcOffset, 22, null);
708  List<String> get testarrayofstring => const fb.ListReader<String>(const fb.StringReader()).vTableGet(_bc, _bcOffset, 24, null);
709  ///  an example documentation comment: this will end up in the generated code
710  ///  multiline too
711  List<Monster> get testarrayoftables => const fb.ListReader<Monster>(Monster.reader).vTableGet(_bc, _bcOffset, 26, null);
712  Monster get enemy => Monster.reader.vTableGet(_bc, _bcOffset, 28, null);
713  List<int> get testnestedflatbuffer => const fb.ListReader<int>(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 30, null);
714  Stat get testempty => Stat.reader.vTableGet(_bc, _bcOffset, 32, null);
715  bool get testbool => const fb.BoolReader().vTableGet(_bc, _bcOffset, 34, false);
716  int get testhashs32Fnv1 => const fb.Int32Reader().vTableGet(_bc, _bcOffset, 36, 0);
717  int get testhashu32Fnv1 => const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 38, 0);
718  int get testhashs64Fnv1 => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 40, 0);
719  int get testhashu64Fnv1 => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 42, 0);
720  int get testhashs32Fnv1a => const fb.Int32Reader().vTableGet(_bc, _bcOffset, 44, 0);
721  int get testhashu32Fnv1a => const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 46, 0);
722  int get testhashs64Fnv1a => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 48, 0);
723  int get testhashu64Fnv1a => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 50, 0);
724  List<bool> get testarrayofbools => const fb.ListReader<bool>(const fb.BoolReader()).vTableGet(_bc, _bcOffset, 52, null);
725  double get testf => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 54, 3.14159);
726  double get testf2 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 56, 3.0);
727  double get testf3 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 58, 0.0);
728  List<String> get testarrayofstring2 => const fb.ListReader<String>(const fb.StringReader()).vTableGet(_bc, _bcOffset, 60, null);
729  List<Ability> get testarrayofsortedstruct => const fb.ListReader<Ability>(Ability.reader).vTableGet(_bc, _bcOffset, 62, null);
730  List<int> get flex => const fb.ListReader<int>(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 64, null);
731  List<Test> get test5 => const fb.ListReader<Test>(Test.reader).vTableGet(_bc, _bcOffset, 66, null);
732  List<int> get vectorOfLongs => const fb.ListReader<int>(const fb.Int64Reader()).vTableGet(_bc, _bcOffset, 68, null);
733  List<double> get vectorOfDoubles => const fb.ListReader<double>(const fb.Float64Reader()).vTableGet(_bc, _bcOffset, 70, null);
734  my_game.InParentNamespace get parentNamespaceTest => my_game.InParentNamespace.reader.vTableGet(_bc, _bcOffset, 72, null);
735  List<Referrable> get vectorOfReferrables => const fb.ListReader<Referrable>(Referrable.reader).vTableGet(_bc, _bcOffset, 74, null);
736  int get singleWeakReference => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 76, 0);
737  List<int> get vectorOfWeakReferences => const fb.ListReader<int>(const fb.Uint64Reader()).vTableGet(_bc, _bcOffset, 78, null);
738  List<Referrable> get vectorOfStrongReferrables => const fb.ListReader<Referrable>(Referrable.reader).vTableGet(_bc, _bcOffset, 80, null);
739  int get coOwningReference => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 82, 0);
740  List<int> get vectorOfCoOwningReferences => const fb.ListReader<int>(const fb.Uint64Reader()).vTableGet(_bc, _bcOffset, 84, null);
741  int get nonOwningReference => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 86, 0);
742  List<int> get vectorOfNonOwningReferences => const fb.ListReader<int>(const fb.Uint64Reader()).vTableGet(_bc, _bcOffset, 88, null);
743  AnyUniqueAliasesTypeId get anyUniqueType => new AnyUniqueAliasesTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 90, 0));
744  dynamic get anyUnique {
745    switch (anyUniqueType?.value) {
746      case 1: return M.reader.vTableGet(_bc, _bcOffset, 92, null);
747      case 2: return TS.reader.vTableGet(_bc, _bcOffset, 92, null);
748      case 3: return M2.reader.vTableGet(_bc, _bcOffset, 92, null);
749      default: return null;
750    }
751  }
752  AnyAmbiguousAliasesTypeId get anyAmbiguousType => new AnyAmbiguousAliasesTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 94, 0));
753  dynamic get anyAmbiguous {
754    switch (anyAmbiguousType?.value) {
755      case 1: return M1.reader.vTableGet(_bc, _bcOffset, 96, null);
756      case 2: return M2.reader.vTableGet(_bc, _bcOffset, 96, null);
757      case 3: return M3.reader.vTableGet(_bc, _bcOffset, 96, null);
758      default: return null;
759    }
760  }
761  List<Color> get vectorOfEnums => const fb.ListReader<Color>(Color.reader).vTableGet(_bc, _bcOffset, 98, null);
762
763  @override
764  String toString() {
765    return 'Monster{pos: $pos, mana: $mana, hp: $hp, name: $name, inventory: $inventory, color: $color, testType: $testType, test: $test, test4: $test4, testarrayofstring: $testarrayofstring, testarrayoftables: $testarrayoftables, enemy: $enemy, testnestedflatbuffer: $testnestedflatbuffer, testempty: $testempty, testbool: $testbool, testhashs32Fnv1: $testhashs32Fnv1, testhashu32Fnv1: $testhashu32Fnv1, testhashs64Fnv1: $testhashs64Fnv1, testhashu64Fnv1: $testhashu64Fnv1, testhashs32Fnv1a: $testhashs32Fnv1a, testhashu32Fnv1a: $testhashu32Fnv1a, testhashs64Fnv1a: $testhashs64Fnv1a, testhashu64Fnv1a: $testhashu64Fnv1a, testarrayofbools: $testarrayofbools, testf: $testf, testf2: $testf2, testf3: $testf3, testarrayofstring2: $testarrayofstring2, testarrayofsortedstruct: $testarrayofsortedstruct, flex: $flex, test5: $test5, vectorOfLongs: $vectorOfLongs, vectorOfDoubles: $vectorOfDoubles, parentNamespaceTest: $parentNamespaceTest, vectorOfReferrables: $vectorOfReferrables, singleWeakReference: $singleWeakReference, vectorOfWeakReferences: $vectorOfWeakReferences, vectorOfStrongReferrables: $vectorOfStrongReferrables, coOwningReference: $coOwningReference, vectorOfCoOwningReferences: $vectorOfCoOwningReferences, nonOwningReference: $nonOwningReference, vectorOfNonOwningReferences: $vectorOfNonOwningReferences, anyUniqueType: $anyUniqueType, anyUnique: $anyUnique, anyAmbiguousType: $anyAmbiguousType, anyAmbiguous: $anyAmbiguous, vectorOfEnums: $vectorOfEnums}';
766  }
767}
768
769class _MonsterReader extends fb.TableReader<Monster> {
770  const _MonsterReader();
771
772  @override
773  Monster createObject(fb.BufferContext bc, int offset) =>
774    new Monster._(bc, offset);
775}
776
777class MonsterBuilder {
778  MonsterBuilder(this.fbBuilder) {
779    assert(fbBuilder != null);
780  }
781
782  final fb.Builder fbBuilder;
783
784  void begin() {
785    fbBuilder.startTable();
786  }
787
788  int addPos(int offset) {
789    fbBuilder.addStruct(0, offset);
790    return fbBuilder.offset;
791  }
792  int addMana(int mana) {
793    fbBuilder.addInt16(1, mana);
794    return fbBuilder.offset;
795  }
796  int addHp(int hp) {
797    fbBuilder.addInt16(2, hp);
798    return fbBuilder.offset;
799  }
800  int addNameOffset(int offset) {
801    fbBuilder.addOffset(3, offset);
802    return fbBuilder.offset;
803  }
804  int addInventoryOffset(int offset) {
805    fbBuilder.addOffset(5, offset);
806    return fbBuilder.offset;
807  }
808  int addColor(Color color) {
809    fbBuilder.addUint8(6, color?.value);
810    return fbBuilder.offset;
811  }
812  int addTestType(AnyTypeId testType) {
813    fbBuilder.addUint8(7, testType?.value);
814    return fbBuilder.offset;
815  }
816  int addTestOffset(int offset) {
817    fbBuilder.addOffset(8, offset);
818    return fbBuilder.offset;
819  }
820  int addTest4Offset(int offset) {
821    fbBuilder.addOffset(9, offset);
822    return fbBuilder.offset;
823  }
824  int addTestarrayofstringOffset(int offset) {
825    fbBuilder.addOffset(10, offset);
826    return fbBuilder.offset;
827  }
828  int addTestarrayoftablesOffset(int offset) {
829    fbBuilder.addOffset(11, offset);
830    return fbBuilder.offset;
831  }
832  int addEnemyOffset(int offset) {
833    fbBuilder.addOffset(12, offset);
834    return fbBuilder.offset;
835  }
836  int addTestnestedflatbufferOffset(int offset) {
837    fbBuilder.addOffset(13, offset);
838    return fbBuilder.offset;
839  }
840  int addTestemptyOffset(int offset) {
841    fbBuilder.addOffset(14, offset);
842    return fbBuilder.offset;
843  }
844  int addTestbool(bool testbool) {
845    fbBuilder.addBool(15, testbool);
846    return fbBuilder.offset;
847  }
848  int addTesthashs32Fnv1(int testhashs32Fnv1) {
849    fbBuilder.addInt32(16, testhashs32Fnv1);
850    return fbBuilder.offset;
851  }
852  int addTesthashu32Fnv1(int testhashu32Fnv1) {
853    fbBuilder.addUint32(17, testhashu32Fnv1);
854    return fbBuilder.offset;
855  }
856  int addTesthashs64Fnv1(int testhashs64Fnv1) {
857    fbBuilder.addInt64(18, testhashs64Fnv1);
858    return fbBuilder.offset;
859  }
860  int addTesthashu64Fnv1(int testhashu64Fnv1) {
861    fbBuilder.addUint64(19, testhashu64Fnv1);
862    return fbBuilder.offset;
863  }
864  int addTesthashs32Fnv1a(int testhashs32Fnv1a) {
865    fbBuilder.addInt32(20, testhashs32Fnv1a);
866    return fbBuilder.offset;
867  }
868  int addTesthashu32Fnv1a(int testhashu32Fnv1a) {
869    fbBuilder.addUint32(21, testhashu32Fnv1a);
870    return fbBuilder.offset;
871  }
872  int addTesthashs64Fnv1a(int testhashs64Fnv1a) {
873    fbBuilder.addInt64(22, testhashs64Fnv1a);
874    return fbBuilder.offset;
875  }
876  int addTesthashu64Fnv1a(int testhashu64Fnv1a) {
877    fbBuilder.addUint64(23, testhashu64Fnv1a);
878    return fbBuilder.offset;
879  }
880  int addTestarrayofboolsOffset(int offset) {
881    fbBuilder.addOffset(24, offset);
882    return fbBuilder.offset;
883  }
884  int addTestf(double testf) {
885    fbBuilder.addFloat32(25, testf);
886    return fbBuilder.offset;
887  }
888  int addTestf2(double testf2) {
889    fbBuilder.addFloat32(26, testf2);
890    return fbBuilder.offset;
891  }
892  int addTestf3(double testf3) {
893    fbBuilder.addFloat32(27, testf3);
894    return fbBuilder.offset;
895  }
896  int addTestarrayofstring2Offset(int offset) {
897    fbBuilder.addOffset(28, offset);
898    return fbBuilder.offset;
899  }
900  int addTestarrayofsortedstructOffset(int offset) {
901    fbBuilder.addOffset(29, offset);
902    return fbBuilder.offset;
903  }
904  int addFlexOffset(int offset) {
905    fbBuilder.addOffset(30, offset);
906    return fbBuilder.offset;
907  }
908  int addTest5Offset(int offset) {
909    fbBuilder.addOffset(31, offset);
910    return fbBuilder.offset;
911  }
912  int addVectorOfLongsOffset(int offset) {
913    fbBuilder.addOffset(32, offset);
914    return fbBuilder.offset;
915  }
916  int addVectorOfDoublesOffset(int offset) {
917    fbBuilder.addOffset(33, offset);
918    return fbBuilder.offset;
919  }
920  int addParentNamespaceTestOffset(int offset) {
921    fbBuilder.addOffset(34, offset);
922    return fbBuilder.offset;
923  }
924  int addVectorOfReferrablesOffset(int offset) {
925    fbBuilder.addOffset(35, offset);
926    return fbBuilder.offset;
927  }
928  int addSingleWeakReference(int singleWeakReference) {
929    fbBuilder.addUint64(36, singleWeakReference);
930    return fbBuilder.offset;
931  }
932  int addVectorOfWeakReferencesOffset(int offset) {
933    fbBuilder.addOffset(37, offset);
934    return fbBuilder.offset;
935  }
936  int addVectorOfStrongReferrablesOffset(int offset) {
937    fbBuilder.addOffset(38, offset);
938    return fbBuilder.offset;
939  }
940  int addCoOwningReference(int coOwningReference) {
941    fbBuilder.addUint64(39, coOwningReference);
942    return fbBuilder.offset;
943  }
944  int addVectorOfCoOwningReferencesOffset(int offset) {
945    fbBuilder.addOffset(40, offset);
946    return fbBuilder.offset;
947  }
948  int addNonOwningReference(int nonOwningReference) {
949    fbBuilder.addUint64(41, nonOwningReference);
950    return fbBuilder.offset;
951  }
952  int addVectorOfNonOwningReferencesOffset(int offset) {
953    fbBuilder.addOffset(42, offset);
954    return fbBuilder.offset;
955  }
956  int addAnyUniqueType(AnyUniqueAliasesTypeId anyUniqueType) {
957    fbBuilder.addUint8(43, anyUniqueType?.value);
958    return fbBuilder.offset;
959  }
960  int addAnyUniqueOffset(int offset) {
961    fbBuilder.addOffset(44, offset);
962    return fbBuilder.offset;
963  }
964  int addAnyAmbiguousType(AnyAmbiguousAliasesTypeId anyAmbiguousType) {
965    fbBuilder.addUint8(45, anyAmbiguousType?.value);
966    return fbBuilder.offset;
967  }
968  int addAnyAmbiguousOffset(int offset) {
969    fbBuilder.addOffset(46, offset);
970    return fbBuilder.offset;
971  }
972  int addVectorOfEnumsOffset(int offset) {
973    fbBuilder.addOffset(47, offset);
974    return fbBuilder.offset;
975  }
976
977  int finish() {
978    return fbBuilder.endTable();
979  }
980}
981
982class MonsterObjectBuilder extends fb.ObjectBuilder {
983  final Vec3ObjectBuilder _pos;
984  final int _mana;
985  final int _hp;
986  final String _name;
987  final List<int> _inventory;
988  final Color _color;
989  final AnyTypeId _testType;
990  final dynamic _test;
991  final List<TestObjectBuilder> _test4;
992  final List<String> _testarrayofstring;
993  final List<MonsterObjectBuilder> _testarrayoftables;
994  final MonsterObjectBuilder _enemy;
995  final List<int> _testnestedflatbuffer;
996  final StatObjectBuilder _testempty;
997  final bool _testbool;
998  final int _testhashs32Fnv1;
999  final int _testhashu32Fnv1;
1000  final int _testhashs64Fnv1;
1001  final int _testhashu64Fnv1;
1002  final int _testhashs32Fnv1a;
1003  final int _testhashu32Fnv1a;
1004  final int _testhashs64Fnv1a;
1005  final int _testhashu64Fnv1a;
1006  final List<bool> _testarrayofbools;
1007  final double _testf;
1008  final double _testf2;
1009  final double _testf3;
1010  final List<String> _testarrayofstring2;
1011  final List<AbilityObjectBuilder> _testarrayofsortedstruct;
1012  final List<int> _flex;
1013  final List<TestObjectBuilder> _test5;
1014  final List<int> _vectorOfLongs;
1015  final List<double> _vectorOfDoubles;
1016  final my_game.InParentNamespaceObjectBuilder _parentNamespaceTest;
1017  final List<ReferrableObjectBuilder> _vectorOfReferrables;
1018  final int _singleWeakReference;
1019  final List<int> _vectorOfWeakReferences;
1020  final List<ReferrableObjectBuilder> _vectorOfStrongReferrables;
1021  final int _coOwningReference;
1022  final List<int> _vectorOfCoOwningReferences;
1023  final int _nonOwningReference;
1024  final List<int> _vectorOfNonOwningReferences;
1025  final AnyUniqueAliasesTypeId _anyUniqueType;
1026  final dynamic _anyUnique;
1027  final AnyAmbiguousAliasesTypeId _anyAmbiguousType;
1028  final dynamic _anyAmbiguous;
1029  final List<Color> _vectorOfEnums;
1030
1031  MonsterObjectBuilder({
1032    Vec3ObjectBuilder pos,
1033    int mana,
1034    int hp,
1035    String name,
1036    List<int> inventory,
1037    Color color,
1038    AnyTypeId testType,
1039    dynamic test,
1040    List<TestObjectBuilder> test4,
1041    List<String> testarrayofstring,
1042    List<MonsterObjectBuilder> testarrayoftables,
1043    MonsterObjectBuilder enemy,
1044    List<int> testnestedflatbuffer,
1045    StatObjectBuilder testempty,
1046    bool testbool,
1047    int testhashs32Fnv1,
1048    int testhashu32Fnv1,
1049    int testhashs64Fnv1,
1050    int testhashu64Fnv1,
1051    int testhashs32Fnv1a,
1052    int testhashu32Fnv1a,
1053    int testhashs64Fnv1a,
1054    int testhashu64Fnv1a,
1055    List<bool> testarrayofbools,
1056    double testf,
1057    double testf2,
1058    double testf3,
1059    List<String> testarrayofstring2,
1060    List<AbilityObjectBuilder> testarrayofsortedstruct,
1061    List<int> flex,
1062    List<TestObjectBuilder> test5,
1063    List<int> vectorOfLongs,
1064    List<double> vectorOfDoubles,
1065    my_game.InParentNamespaceObjectBuilder parentNamespaceTest,
1066    List<ReferrableObjectBuilder> vectorOfReferrables,
1067    int singleWeakReference,
1068    List<int> vectorOfWeakReferences,
1069    List<ReferrableObjectBuilder> vectorOfStrongReferrables,
1070    int coOwningReference,
1071    List<int> vectorOfCoOwningReferences,
1072    int nonOwningReference,
1073    List<int> vectorOfNonOwningReferences,
1074    AnyUniqueAliasesTypeId anyUniqueType,
1075    dynamic anyUnique,
1076    AnyAmbiguousAliasesTypeId anyAmbiguousType,
1077    dynamic anyAmbiguous,
1078    List<Color> vectorOfEnums,
1079  })
1080      : _pos = pos,
1081        _mana = mana,
1082        _hp = hp,
1083        _name = name,
1084        _inventory = inventory,
1085        _color = color,
1086        _testType = testType,
1087        _test = test,
1088        _test4 = test4,
1089        _testarrayofstring = testarrayofstring,
1090        _testarrayoftables = testarrayoftables,
1091        _enemy = enemy,
1092        _testnestedflatbuffer = testnestedflatbuffer,
1093        _testempty = testempty,
1094        _testbool = testbool,
1095        _testhashs32Fnv1 = testhashs32Fnv1,
1096        _testhashu32Fnv1 = testhashu32Fnv1,
1097        _testhashs64Fnv1 = testhashs64Fnv1,
1098        _testhashu64Fnv1 = testhashu64Fnv1,
1099        _testhashs32Fnv1a = testhashs32Fnv1a,
1100        _testhashu32Fnv1a = testhashu32Fnv1a,
1101        _testhashs64Fnv1a = testhashs64Fnv1a,
1102        _testhashu64Fnv1a = testhashu64Fnv1a,
1103        _testarrayofbools = testarrayofbools,
1104        _testf = testf,
1105        _testf2 = testf2,
1106        _testf3 = testf3,
1107        _testarrayofstring2 = testarrayofstring2,
1108        _testarrayofsortedstruct = testarrayofsortedstruct,
1109        _flex = flex,
1110        _test5 = test5,
1111        _vectorOfLongs = vectorOfLongs,
1112        _vectorOfDoubles = vectorOfDoubles,
1113        _parentNamespaceTest = parentNamespaceTest,
1114        _vectorOfReferrables = vectorOfReferrables,
1115        _singleWeakReference = singleWeakReference,
1116        _vectorOfWeakReferences = vectorOfWeakReferences,
1117        _vectorOfStrongReferrables = vectorOfStrongReferrables,
1118        _coOwningReference = coOwningReference,
1119        _vectorOfCoOwningReferences = vectorOfCoOwningReferences,
1120        _nonOwningReference = nonOwningReference,
1121        _vectorOfNonOwningReferences = vectorOfNonOwningReferences,
1122        _anyUniqueType = anyUniqueType,
1123        _anyUnique = anyUnique,
1124        _anyAmbiguousType = anyAmbiguousType,
1125        _anyAmbiguous = anyAmbiguous,
1126        _vectorOfEnums = vectorOfEnums;
1127
1128  /// Finish building, and store into the [fbBuilder].
1129  @override
1130  int finish(
1131    fb.Builder fbBuilder) {
1132    assert(fbBuilder != null);
1133    final int nameOffset = fbBuilder.writeString(_name);
1134    final int inventoryOffset = _inventory?.isNotEmpty == true
1135        ? fbBuilder.writeListUint8(_inventory)
1136        : null;
1137    final int testOffset = _test?.getOrCreateOffset(fbBuilder);
1138    final int test4Offset = _test4?.isNotEmpty == true
1139        ? fbBuilder.writeListOfStructs(_test4)
1140        : null;
1141    final int testarrayofstringOffset = _testarrayofstring?.isNotEmpty == true
1142        ? fbBuilder.writeList(_testarrayofstring.map((b) => fbBuilder.writeString(b)).toList())
1143        : null;
1144    final int testarrayoftablesOffset = _testarrayoftables?.isNotEmpty == true
1145        ? fbBuilder.writeList(_testarrayoftables.map((b) => b.getOrCreateOffset(fbBuilder)).toList())
1146        : null;
1147    final int enemyOffset = _enemy?.getOrCreateOffset(fbBuilder);
1148    final int testnestedflatbufferOffset = _testnestedflatbuffer?.isNotEmpty == true
1149        ? fbBuilder.writeListUint8(_testnestedflatbuffer)
1150        : null;
1151    final int testemptyOffset = _testempty?.getOrCreateOffset(fbBuilder);
1152    final int testarrayofboolsOffset = _testarrayofbools?.isNotEmpty == true
1153        ? fbBuilder.writeListBool(_testarrayofbools)
1154        : null;
1155    final int testarrayofstring2Offset = _testarrayofstring2?.isNotEmpty == true
1156        ? fbBuilder.writeList(_testarrayofstring2.map((b) => fbBuilder.writeString(b)).toList())
1157        : null;
1158    final int testarrayofsortedstructOffset = _testarrayofsortedstruct?.isNotEmpty == true
1159        ? fbBuilder.writeListOfStructs(_testarrayofsortedstruct)
1160        : null;
1161    final int flexOffset = _flex?.isNotEmpty == true
1162        ? fbBuilder.writeListUint8(_flex)
1163        : null;
1164    final int test5Offset = _test5?.isNotEmpty == true
1165        ? fbBuilder.writeListOfStructs(_test5)
1166        : null;
1167    final int vectorOfLongsOffset = _vectorOfLongs?.isNotEmpty == true
1168        ? fbBuilder.writeListInt64(_vectorOfLongs)
1169        : null;
1170    final int vectorOfDoublesOffset = _vectorOfDoubles?.isNotEmpty == true
1171        ? fbBuilder.writeListFloat64(_vectorOfDoubles)
1172        : null;
1173    final int parentNamespaceTestOffset = _parentNamespaceTest?.getOrCreateOffset(fbBuilder);
1174    final int vectorOfReferrablesOffset = _vectorOfReferrables?.isNotEmpty == true
1175        ? fbBuilder.writeList(_vectorOfReferrables.map((b) => b.getOrCreateOffset(fbBuilder)).toList())
1176        : null;
1177    final int vectorOfWeakReferencesOffset = _vectorOfWeakReferences?.isNotEmpty == true
1178        ? fbBuilder.writeListUint64(_vectorOfWeakReferences)
1179        : null;
1180    final int vectorOfStrongReferrablesOffset = _vectorOfStrongReferrables?.isNotEmpty == true
1181        ? fbBuilder.writeList(_vectorOfStrongReferrables.map((b) => b.getOrCreateOffset(fbBuilder)).toList())
1182        : null;
1183    final int vectorOfCoOwningReferencesOffset = _vectorOfCoOwningReferences?.isNotEmpty == true
1184        ? fbBuilder.writeListUint64(_vectorOfCoOwningReferences)
1185        : null;
1186    final int vectorOfNonOwningReferencesOffset = _vectorOfNonOwningReferences?.isNotEmpty == true
1187        ? fbBuilder.writeListUint64(_vectorOfNonOwningReferences)
1188        : null;
1189    final int anyUniqueOffset = _anyUnique?.getOrCreateOffset(fbBuilder);
1190    final int anyAmbiguousOffset = _anyAmbiguous?.getOrCreateOffset(fbBuilder);
1191    final int vectorOfEnumsOffset = _vectorOfEnums?.isNotEmpty == true
1192        ? fbBuilder.writeListUint8(_vectorOfEnums.map((f) => f.value))
1193        : null;
1194
1195    fbBuilder.startTable();
1196    if (_pos != null) {
1197      fbBuilder.addStruct(0, _pos.finish(fbBuilder));
1198    }
1199    fbBuilder.addInt16(1, _mana);
1200    fbBuilder.addInt16(2, _hp);
1201    if (nameOffset != null) {
1202      fbBuilder.addOffset(3, nameOffset);
1203    }
1204    if (inventoryOffset != null) {
1205      fbBuilder.addOffset(5, inventoryOffset);
1206    }
1207    fbBuilder.addUint8(6, _color?.value);
1208    fbBuilder.addUint8(7, _testType?.value);
1209    if (testOffset != null) {
1210      fbBuilder.addOffset(8, testOffset);
1211    }
1212    if (test4Offset != null) {
1213      fbBuilder.addOffset(9, test4Offset);
1214    }
1215    if (testarrayofstringOffset != null) {
1216      fbBuilder.addOffset(10, testarrayofstringOffset);
1217    }
1218    if (testarrayoftablesOffset != null) {
1219      fbBuilder.addOffset(11, testarrayoftablesOffset);
1220    }
1221    if (enemyOffset != null) {
1222      fbBuilder.addOffset(12, enemyOffset);
1223    }
1224    if (testnestedflatbufferOffset != null) {
1225      fbBuilder.addOffset(13, testnestedflatbufferOffset);
1226    }
1227    if (testemptyOffset != null) {
1228      fbBuilder.addOffset(14, testemptyOffset);
1229    }
1230    fbBuilder.addBool(15, _testbool);
1231    fbBuilder.addInt32(16, _testhashs32Fnv1);
1232    fbBuilder.addUint32(17, _testhashu32Fnv1);
1233    fbBuilder.addInt64(18, _testhashs64Fnv1);
1234    fbBuilder.addUint64(19, _testhashu64Fnv1);
1235    fbBuilder.addInt32(20, _testhashs32Fnv1a);
1236    fbBuilder.addUint32(21, _testhashu32Fnv1a);
1237    fbBuilder.addInt64(22, _testhashs64Fnv1a);
1238    fbBuilder.addUint64(23, _testhashu64Fnv1a);
1239    if (testarrayofboolsOffset != null) {
1240      fbBuilder.addOffset(24, testarrayofboolsOffset);
1241    }
1242    fbBuilder.addFloat32(25, _testf);
1243    fbBuilder.addFloat32(26, _testf2);
1244    fbBuilder.addFloat32(27, _testf3);
1245    if (testarrayofstring2Offset != null) {
1246      fbBuilder.addOffset(28, testarrayofstring2Offset);
1247    }
1248    if (testarrayofsortedstructOffset != null) {
1249      fbBuilder.addOffset(29, testarrayofsortedstructOffset);
1250    }
1251    if (flexOffset != null) {
1252      fbBuilder.addOffset(30, flexOffset);
1253    }
1254    if (test5Offset != null) {
1255      fbBuilder.addOffset(31, test5Offset);
1256    }
1257    if (vectorOfLongsOffset != null) {
1258      fbBuilder.addOffset(32, vectorOfLongsOffset);
1259    }
1260    if (vectorOfDoublesOffset != null) {
1261      fbBuilder.addOffset(33, vectorOfDoublesOffset);
1262    }
1263    if (parentNamespaceTestOffset != null) {
1264      fbBuilder.addOffset(34, parentNamespaceTestOffset);
1265    }
1266    if (vectorOfReferrablesOffset != null) {
1267      fbBuilder.addOffset(35, vectorOfReferrablesOffset);
1268    }
1269    fbBuilder.addUint64(36, _singleWeakReference);
1270    if (vectorOfWeakReferencesOffset != null) {
1271      fbBuilder.addOffset(37, vectorOfWeakReferencesOffset);
1272    }
1273    if (vectorOfStrongReferrablesOffset != null) {
1274      fbBuilder.addOffset(38, vectorOfStrongReferrablesOffset);
1275    }
1276    fbBuilder.addUint64(39, _coOwningReference);
1277    if (vectorOfCoOwningReferencesOffset != null) {
1278      fbBuilder.addOffset(40, vectorOfCoOwningReferencesOffset);
1279    }
1280    fbBuilder.addUint64(41, _nonOwningReference);
1281    if (vectorOfNonOwningReferencesOffset != null) {
1282      fbBuilder.addOffset(42, vectorOfNonOwningReferencesOffset);
1283    }
1284    fbBuilder.addUint8(43, _anyUniqueType?.value);
1285    if (anyUniqueOffset != null) {
1286      fbBuilder.addOffset(44, anyUniqueOffset);
1287    }
1288    fbBuilder.addUint8(45, _anyAmbiguousType?.value);
1289    if (anyAmbiguousOffset != null) {
1290      fbBuilder.addOffset(46, anyAmbiguousOffset);
1291    }
1292    if (vectorOfEnumsOffset != null) {
1293      fbBuilder.addOffset(47, vectorOfEnumsOffset);
1294    }
1295    return fbBuilder.endTable();
1296  }
1297
1298  /// Convenience method to serialize to byte list.
1299  @override
1300  Uint8List toBytes([String fileIdentifier]) {
1301    fb.Builder fbBuilder = new fb.Builder();
1302    int offset = finish(fbBuilder);
1303    return fbBuilder.finish(offset, fileIdentifier);
1304  }
1305}
1306class TypeAliases {
1307  TypeAliases._(this._bc, this._bcOffset);
1308  factory TypeAliases(List<int> bytes) {
1309    fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
1310    return reader.read(rootRef, 0);
1311  }
1312
1313  static const fb.Reader<TypeAliases> reader = const _TypeAliasesReader();
1314
1315  final fb.BufferContext _bc;
1316  final int _bcOffset;
1317
1318  int get i8 => const fb.Int8Reader().vTableGet(_bc, _bcOffset, 4, 0);
1319  int get u8 => const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 6, 0);
1320  int get i16 => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 0);
1321  int get u16 => const fb.Uint16Reader().vTableGet(_bc, _bcOffset, 10, 0);
1322  int get i32 => const fb.Int32Reader().vTableGet(_bc, _bcOffset, 12, 0);
1323  int get u32 => const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 14, 0);
1324  int get i64 => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 16, 0);
1325  int get u64 => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 18, 0);
1326  double get f32 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 20, 0.0);
1327  double get f64 => const fb.Float64Reader().vTableGet(_bc, _bcOffset, 22, 0.0);
1328  List<int> get v8 => const fb.ListReader<int>(const fb.Int8Reader()).vTableGet(_bc, _bcOffset, 24, null);
1329  List<double> get vf64 => const fb.ListReader<double>(const fb.Float64Reader()).vTableGet(_bc, _bcOffset, 26, null);
1330
1331  @override
1332  String toString() {
1333    return 'TypeAliases{i8: $i8, u8: $u8, i16: $i16, u16: $u16, i32: $i32, u32: $u32, i64: $i64, u64: $u64, f32: $f32, f64: $f64, v8: $v8, vf64: $vf64}';
1334  }
1335}
1336
1337class _TypeAliasesReader extends fb.TableReader<TypeAliases> {
1338  const _TypeAliasesReader();
1339
1340  @override
1341  TypeAliases createObject(fb.BufferContext bc, int offset) =>
1342    new TypeAliases._(bc, offset);
1343}
1344
1345class TypeAliasesBuilder {
1346  TypeAliasesBuilder(this.fbBuilder) {
1347    assert(fbBuilder != null);
1348  }
1349
1350  final fb.Builder fbBuilder;
1351
1352  void begin() {
1353    fbBuilder.startTable();
1354  }
1355
1356  int addI8(int i8) {
1357    fbBuilder.addInt8(0, i8);
1358    return fbBuilder.offset;
1359  }
1360  int addU8(int u8) {
1361    fbBuilder.addUint8(1, u8);
1362    return fbBuilder.offset;
1363  }
1364  int addI16(int i16) {
1365    fbBuilder.addInt16(2, i16);
1366    return fbBuilder.offset;
1367  }
1368  int addU16(int u16) {
1369    fbBuilder.addUint16(3, u16);
1370    return fbBuilder.offset;
1371  }
1372  int addI32(int i32) {
1373    fbBuilder.addInt32(4, i32);
1374    return fbBuilder.offset;
1375  }
1376  int addU32(int u32) {
1377    fbBuilder.addUint32(5, u32);
1378    return fbBuilder.offset;
1379  }
1380  int addI64(int i64) {
1381    fbBuilder.addInt64(6, i64);
1382    return fbBuilder.offset;
1383  }
1384  int addU64(int u64) {
1385    fbBuilder.addUint64(7, u64);
1386    return fbBuilder.offset;
1387  }
1388  int addF32(double f32) {
1389    fbBuilder.addFloat32(8, f32);
1390    return fbBuilder.offset;
1391  }
1392  int addF64(double f64) {
1393    fbBuilder.addFloat64(9, f64);
1394    return fbBuilder.offset;
1395  }
1396  int addV8Offset(int offset) {
1397    fbBuilder.addOffset(10, offset);
1398    return fbBuilder.offset;
1399  }
1400  int addVf64Offset(int offset) {
1401    fbBuilder.addOffset(11, offset);
1402    return fbBuilder.offset;
1403  }
1404
1405  int finish() {
1406    return fbBuilder.endTable();
1407  }
1408}
1409
1410class TypeAliasesObjectBuilder extends fb.ObjectBuilder {
1411  final int _i8;
1412  final int _u8;
1413  final int _i16;
1414  final int _u16;
1415  final int _i32;
1416  final int _u32;
1417  final int _i64;
1418  final int _u64;
1419  final double _f32;
1420  final double _f64;
1421  final List<int> _v8;
1422  final List<double> _vf64;
1423
1424  TypeAliasesObjectBuilder({
1425    int i8,
1426    int u8,
1427    int i16,
1428    int u16,
1429    int i32,
1430    int u32,
1431    int i64,
1432    int u64,
1433    double f32,
1434    double f64,
1435    List<int> v8,
1436    List<double> vf64,
1437  })
1438      : _i8 = i8,
1439        _u8 = u8,
1440        _i16 = i16,
1441        _u16 = u16,
1442        _i32 = i32,
1443        _u32 = u32,
1444        _i64 = i64,
1445        _u64 = u64,
1446        _f32 = f32,
1447        _f64 = f64,
1448        _v8 = v8,
1449        _vf64 = vf64;
1450
1451  /// Finish building, and store into the [fbBuilder].
1452  @override
1453  int finish(
1454    fb.Builder fbBuilder) {
1455    assert(fbBuilder != null);
1456    final int v8Offset = _v8?.isNotEmpty == true
1457        ? fbBuilder.writeListInt8(_v8)
1458        : null;
1459    final int vf64Offset = _vf64?.isNotEmpty == true
1460        ? fbBuilder.writeListFloat64(_vf64)
1461        : null;
1462
1463    fbBuilder.startTable();
1464    fbBuilder.addInt8(0, _i8);
1465    fbBuilder.addUint8(1, _u8);
1466    fbBuilder.addInt16(2, _i16);
1467    fbBuilder.addUint16(3, _u16);
1468    fbBuilder.addInt32(4, _i32);
1469    fbBuilder.addUint32(5, _u32);
1470    fbBuilder.addInt64(6, _i64);
1471    fbBuilder.addUint64(7, _u64);
1472    fbBuilder.addFloat32(8, _f32);
1473    fbBuilder.addFloat64(9, _f64);
1474    if (v8Offset != null) {
1475      fbBuilder.addOffset(10, v8Offset);
1476    }
1477    if (vf64Offset != null) {
1478      fbBuilder.addOffset(11, vf64Offset);
1479    }
1480    return fbBuilder.endTable();
1481  }
1482
1483  /// Convenience method to serialize to byte list.
1484  @override
1485  Uint8List toBytes([String fileIdentifier]) {
1486    fb.Builder fbBuilder = new fb.Builder();
1487    int offset = finish(fbBuilder);
1488    return fbBuilder.finish(offset, fileIdentifier);
1489  }
1490}
1491