diff --git a/dart/example/example.dart b/dart/example/example.dart index 5b7cccc8781..c84ffa60198 100644 --- a/dart/example/example.dart +++ b/dart/example/example.dart @@ -123,26 +123,24 @@ bool verify(List buffer) { // Get and test a field of the FlatBuffer's `struct`. var pos = monster.pos!; - assert(pos != null); assert(pos.z == 3.0); // Get a test an element from the `inventory` FlatBuffer's `vector`. - var inv = monster.inventory; - assert(inv != null); + var inv = monster.inventory!; assert(inv.length == 10); assert(inv[9] == 9); // Get and test the `weapons` FlatBuffers's `vector`. var expected_weapon_names = ["Sword", "Axe"]; var expected_weapon_damages = [3, 5]; - var weps = monster.weapons; + var weps = monster.weapons!; for (int i = 0; i < weps.length; i++) { - assert(weps[i]!.name == expected_weapon_names[i]); - assert(weps[i]!.damage == expected_weapon_damages[i]); + assert(weps[i].name == expected_weapon_names[i]); + assert(weps[i].damage == expected_weapon_damages[i]); } // Get and test the `Equipment` union (`equipped` field). - assert(monster.equippedType.value == myGame.EquipmentTypeId.Weapon.value); + assert(monster.equippedType!.value == myGame.EquipmentTypeId.Weapon.value); assert(monster.equippedType == myGame.EquipmentTypeId.Weapon); assert(monster.equipped is myGame.Weapon); diff --git a/dart/example/monster_my_game.sample_generated.dart b/dart/example/monster_my_game.sample_generated.dart index ced9b31b9ae..4f08860fb38 100644 --- a/dart/example/monster_my_game.sample_generated.dart +++ b/dart/example/monster_my_game.sample_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library my_game.sample; @@ -12,13 +12,16 @@ class Color { const Color._(this.value); factory Color.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum Color'); } - return values[value]; + return result; } + static Color? _createOrNull(int? value) => + value == null ? null : Color.fromValue(value); + static const int minValue = 0; static const int maxValue = 2; static bool containsValue(int value) => values.containsKey(value); @@ -26,7 +29,10 @@ class Color { static const Color Red = const Color._(0); static const Color Green = const Color._(1); static const Color Blue = const Color._(2); - static const Map values = {0: Red,1: Green,2: Blue,}; + static const Map values = { + 0: Red, + 1: Green, + 2: Blue}; static const fb.Reader reader = const _ColorReader(); @@ -52,20 +58,25 @@ class EquipmentTypeId { const EquipmentTypeId._(this.value); factory EquipmentTypeId.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum EquipmentTypeId'); } - return values[value]; + return result; } + static EquipmentTypeId? _createOrNull(int? value) => + value == null ? null : EquipmentTypeId.fromValue(value); + static const int minValue = 0; static const int maxValue = 1; static bool containsValue(int value) => values.containsKey(value); static const EquipmentTypeId NONE = const EquipmentTypeId._(0); static const EquipmentTypeId Weapon = const EquipmentTypeId._(1); - static const Map values = {0: NONE,1: Weapon,}; + static const Map values = { + 0: NONE, + 1: Weapon}; static const fb.Reader reader = const _EquipmentTypeIdReader(); @@ -116,9 +127,7 @@ class _Vec3Reader extends fb.StructReader { } class Vec3Builder { - Vec3Builder(this.fbBuilder) { - assert(fbBuilder != null); - } + Vec3Builder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -137,9 +146,9 @@ class Vec3ObjectBuilder extends fb.ObjectBuilder { final double _z; Vec3ObjectBuilder({ - double x, - double y, - double z, + required double x, + required double y, + required double z, }) : _x = x, _y = y, @@ -147,10 +156,7 @@ class Vec3ObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.putFloat32(_z); fbBuilder.putFloat32(_y); fbBuilder.putFloat32(_x); @@ -159,7 +165,7 @@ class Vec3ObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -177,21 +183,21 @@ class Monster { final fb.BufferContext _bc; final int _bcOffset; - Vec3 get pos => Vec3.reader.vTableGet(_bc, _bcOffset, 4, null); + Vec3? get pos => Vec3.reader.vTableGetNullable(_bc, _bcOffset, 4); int get mana => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 150); int get hp => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 100); - String get name => const fb.StringReader().vTableGet(_bc, _bcOffset, 10, null); - List get inventory => const fb.ListReader(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 14, null); - Color get color => new Color.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 16, 2)); - List get weapons => const fb.ListReader(Weapon.reader).vTableGet(_bc, _bcOffset, 18, null); - EquipmentTypeId get equippedType => new EquipmentTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 20, 0)); - dynamic get equipped { + String? get name => const fb.StringReader().vTableGetNullable(_bc, _bcOffset, 10); + List? get inventory => const fb.ListReader(const fb.Uint8Reader()).vTableGetNullable(_bc, _bcOffset, 14); + Color get color => Color.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 16, 2)); + List? get weapons => const fb.ListReader(Weapon.reader).vTableGetNullable(_bc, _bcOffset, 18); + EquipmentTypeId? get equippedType => EquipmentTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 20)); + dynamic? get equipped { switch (equippedType?.value) { - case 1: return Weapon.reader.vTableGet(_bc, _bcOffset, 22, null); + case 1: return Weapon.reader.vTableGetNullable(_bc, _bcOffset, 22); default: return null; } } - List get path => const fb.ListReader(Vec3.reader).vTableGet(_bc, _bcOffset, 24, null); + List? get path => const fb.ListReader(Vec3.reader).vTableGetNullable(_bc, _bcOffset, 24); @override String toString() { @@ -208,9 +214,7 @@ class _MonsterReader extends fb.TableReader { } class MonsterBuilder { - MonsterBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + MonsterBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -222,39 +226,39 @@ class MonsterBuilder { fbBuilder.addStruct(0, offset); return fbBuilder.offset; } - int addMana(int mana) { + int addMana(int? mana) { fbBuilder.addInt16(1, mana); return fbBuilder.offset; } - int addHp(int hp) { + int addHp(int? hp) { fbBuilder.addInt16(2, hp); return fbBuilder.offset; } - int addNameOffset(int offset) { + int addNameOffset(int? offset) { fbBuilder.addOffset(3, offset); return fbBuilder.offset; } - int addInventoryOffset(int offset) { + int addInventoryOffset(int? offset) { fbBuilder.addOffset(5, offset); return fbBuilder.offset; } - int addColor(Color color) { + int addColor(Color? color) { fbBuilder.addInt8(6, color?.value); return fbBuilder.offset; } - int addWeaponsOffset(int offset) { + int addWeaponsOffset(int? offset) { fbBuilder.addOffset(7, offset); return fbBuilder.offset; } - int addEquippedType(EquipmentTypeId equippedType) { + int addEquippedType(EquipmentTypeId? equippedType) { fbBuilder.addUint8(8, equippedType?.value); return fbBuilder.offset; } - int addEquippedOffset(int offset) { + int addEquippedOffset(int? offset) { fbBuilder.addOffset(9, offset); return fbBuilder.offset; } - int addPathOffset(int offset) { + int addPathOffset(int? offset) { fbBuilder.addOffset(10, offset); return fbBuilder.offset; } @@ -265,28 +269,28 @@ class MonsterBuilder { } class MonsterObjectBuilder extends fb.ObjectBuilder { - final Vec3ObjectBuilder _pos; - final int _mana; - final int _hp; - final String _name; - final List _inventory; - final Color _color; - final List _weapons; - final EquipmentTypeId _equippedType; - final dynamic _equipped; - final List _path; + final Vec3ObjectBuilder? _pos; + final int? _mana; + final int? _hp; + final String? _name; + final List? _inventory; + final Color? _color; + final List? _weapons; + final EquipmentTypeId? _equippedType; + final dynamic? _equipped; + final List? _path; MonsterObjectBuilder({ - Vec3ObjectBuilder pos, - int mana, - int hp, - String name, - List inventory, - Color color, - List weapons, - EquipmentTypeId equippedType, - dynamic equipped, - List path, + Vec3ObjectBuilder? pos, + int? mana, + int? hp, + String? name, + List? inventory, + Color? color, + List? weapons, + EquipmentTypeId? equippedType, + dynamic? equipped, + List? path, }) : _pos = pos, _mana = mana, @@ -301,50 +305,37 @@ class MonsterObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int nameOffset = fbBuilder.writeString(_name); - final int inventoryOffset = _inventory?.isNotEmpty == true - ? fbBuilder.writeListUint8(_inventory) + int finish(fb.Builder fbBuilder) { + final int? nameOffset = fbBuilder.writeString(_name); + final int? inventoryOffset = _inventory?.isNotEmpty == true + ? fbBuilder.writeListUint8(_inventory!) : null; - final int weaponsOffset = _weapons?.isNotEmpty == true - ? fbBuilder.writeList(_weapons.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) + final int? weaponsOffset = _weapons?.isNotEmpty == true + ? fbBuilder.writeList(_weapons!.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) : null; - final int equippedOffset = _equipped?.getOrCreateOffset(fbBuilder); - final int pathOffset = _path?.isNotEmpty == true - ? fbBuilder.writeListOfStructs(_path) + final int? equippedOffset = _equipped?.getOrCreateOffset(fbBuilder); + final int? pathOffset = _path?.isNotEmpty == true + ? fbBuilder.writeListOfStructs(_path!) : null; - fbBuilder.startTable(); if (_pos != null) { - fbBuilder.addStruct(0, _pos.finish(fbBuilder)); + fbBuilder.addStruct(0, _pos!.finish(fbBuilder)); } fbBuilder.addInt16(1, _mana); fbBuilder.addInt16(2, _hp); - if (nameOffset != null) { - fbBuilder.addOffset(3, nameOffset); - } - if (inventoryOffset != null) { - fbBuilder.addOffset(5, inventoryOffset); - } + fbBuilder.addOffset(3, nameOffset); + fbBuilder.addOffset(5, inventoryOffset); fbBuilder.addInt8(6, _color?.value); - if (weaponsOffset != null) { - fbBuilder.addOffset(7, weaponsOffset); - } + fbBuilder.addOffset(7, weaponsOffset); fbBuilder.addUint8(8, _equippedType?.value); - if (equippedOffset != null) { - fbBuilder.addOffset(9, equippedOffset); - } - if (pathOffset != null) { - fbBuilder.addOffset(10, pathOffset); - } + fbBuilder.addOffset(9, equippedOffset); + fbBuilder.addOffset(10, pathOffset); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -362,7 +353,7 @@ class Weapon { final fb.BufferContext _bc; final int _bcOffset; - String get name => const fb.StringReader().vTableGet(_bc, _bcOffset, 4, null); + String? get name => const fb.StringReader().vTableGetNullable(_bc, _bcOffset, 4); int get damage => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 0); @override @@ -380,9 +371,7 @@ class _WeaponReader extends fb.TableReader { } class WeaponBuilder { - WeaponBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + WeaponBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -390,11 +379,11 @@ class WeaponBuilder { fbBuilder.startTable(); } - int addNameOffset(int offset) { + int addNameOffset(int? offset) { fbBuilder.addOffset(0, offset); return fbBuilder.offset; } - int addDamage(int damage) { + int addDamage(int? damage) { fbBuilder.addInt16(1, damage); return fbBuilder.offset; } @@ -405,34 +394,29 @@ class WeaponBuilder { } class WeaponObjectBuilder extends fb.ObjectBuilder { - final String _name; - final int _damage; + final String? _name; + final int? _damage; WeaponObjectBuilder({ - String name, - int damage, + String? name, + int? damage, }) : _name = name, _damage = damage; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int nameOffset = fbBuilder.writeString(_name); - + int finish(fb.Builder fbBuilder) { + final int? nameOffset = fbBuilder.writeString(_name); fbBuilder.startTable(); - if (nameOffset != null) { - fbBuilder.addOffset(0, nameOffset); - } + fbBuilder.addOffset(0, nameOffset); fbBuilder.addInt16(1, _damage); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/samples/dart_sample.sh b/samples/dart_sample.sh index 561606668a2..bc4328ede27 100755 --- a/samples/dart_sample.sh +++ b/samples/dart_sample.sh @@ -1,4 +1,5 @@ #!/bin/bash +set -euo # # Copyright 2018 Dan Field. All rights reserved. # diff --git a/tests/monster_extra_my_game_generated.dart b/tests/monster_extra_my_game_generated.dart index 11bf3af8a73..7afa43299b0 100644 --- a/tests/monster_extra_my_game_generated.dart +++ b/tests/monster_extra_my_game_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library my_game; @@ -27,8 +27,8 @@ class MonsterExtra { double get f1 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 14, double.nan); double get f2 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 16, double.infinity); double get f3 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 18, double.negativeInfinity); - List get dvec => const fb.ListReader(const fb.Float64Reader()).vTableGet(_bc, _bcOffset, 20, null); - List get fvec => const fb.ListReader(const fb.Float32Reader()).vTableGet(_bc, _bcOffset, 22, null); + List? get dvec => const fb.ListReader(const fb.Float64Reader()).vTableGetNullable(_bc, _bcOffset, 20); + List? get fvec => const fb.ListReader(const fb.Float32Reader()).vTableGetNullable(_bc, _bcOffset, 22); @override String toString() { @@ -47,7 +47,7 @@ class MonsterExtra { dvec: dvec, fvec: fvec); - static int pack(fb.Builder fbBuilder, MonsterExtraT object) { + static int pack(fb.Builder fbBuilder, MonsterExtraT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -62,30 +62,28 @@ class MonsterExtraT { double f1; double f2; double f3; - List dvec; - List fvec; + List? dvec; + List? fvec; MonsterExtraT({ - this.d0, - this.d1, - this.d2, - this.d3, - this.f0, - this.f1, - this.f2, - this.f3, + this.d0 = double.nan, + this.d1 = double.nan, + this.d2 = double.infinity, + this.d3 = double.negativeInfinity, + this.f0 = double.nan, + this.f1 = double.nan, + this.f2 = double.infinity, + this.f3 = double.negativeInfinity, this.dvec, this.fvec}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int dvecOffset = dvec?.isNotEmpty == true - ? fbBuilder.writeListFloat64(dvec) + final int? dvecOffset = dvec?.isNotEmpty == true + ? fbBuilder.writeListFloat64(dvec!) : null; - final int fvecOffset = fvec?.isNotEmpty == true - ? fbBuilder.writeListFloat32(fvec) + final int? fvecOffset = fvec?.isNotEmpty == true + ? fbBuilder.writeListFloat32(fvec!) : null; - fbBuilder.startTable(); fbBuilder.addFloat64(0, d0); fbBuilder.addFloat64(1, d1); @@ -95,12 +93,8 @@ class MonsterExtraT { fbBuilder.addFloat32(5, f1); fbBuilder.addFloat32(6, f2); fbBuilder.addFloat32(7, f3); - if (dvecOffset != null) { - fbBuilder.addOffset(8, dvecOffset); - } - if (fvecOffset != null) { - fbBuilder.addOffset(9, fvecOffset); - } + fbBuilder.addOffset(8, dvecOffset); + fbBuilder.addOffset(9, fvecOffset); return fbBuilder.endTable(); } @@ -119,9 +113,7 @@ class _MonsterExtraReader extends fb.TableReader { } class MonsterExtraBuilder { - MonsterExtraBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + MonsterExtraBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -129,43 +121,43 @@ class MonsterExtraBuilder { fbBuilder.startTable(); } - int addD0(double d0) { + int addD0(double? d0) { fbBuilder.addFloat64(0, d0); return fbBuilder.offset; } - int addD1(double d1) { + int addD1(double? d1) { fbBuilder.addFloat64(1, d1); return fbBuilder.offset; } - int addD2(double d2) { + int addD2(double? d2) { fbBuilder.addFloat64(2, d2); return fbBuilder.offset; } - int addD3(double d3) { + int addD3(double? d3) { fbBuilder.addFloat64(3, d3); return fbBuilder.offset; } - int addF0(double f0) { + int addF0(double? f0) { fbBuilder.addFloat32(4, f0); return fbBuilder.offset; } - int addF1(double f1) { + int addF1(double? f1) { fbBuilder.addFloat32(5, f1); return fbBuilder.offset; } - int addF2(double f2) { + int addF2(double? f2) { fbBuilder.addFloat32(6, f2); return fbBuilder.offset; } - int addF3(double f3) { + int addF3(double? f3) { fbBuilder.addFloat32(7, f3); return fbBuilder.offset; } - int addDvecOffset(int offset) { + int addDvecOffset(int? offset) { fbBuilder.addOffset(8, offset); return fbBuilder.offset; } - int addFvecOffset(int offset) { + int addFvecOffset(int? offset) { fbBuilder.addOffset(9, offset); return fbBuilder.offset; } @@ -176,28 +168,28 @@ class MonsterExtraBuilder { } class MonsterExtraObjectBuilder extends fb.ObjectBuilder { - final double _d0; - final double _d1; - final double _d2; - final double _d3; - final double _f0; - final double _f1; - final double _f2; - final double _f3; - final List _dvec; - final List _fvec; + final double? _d0; + final double? _d1; + final double? _d2; + final double? _d3; + final double? _f0; + final double? _f1; + final double? _f2; + final double? _f3; + final List? _dvec; + final List? _fvec; MonsterExtraObjectBuilder({ - double d0, - double d1, - double d2, - double d3, - double f0, - double f1, - double f2, - double f3, - List dvec, - List fvec, + double? d0, + double? d1, + double? d2, + double? d3, + double? f0, + double? f1, + double? f2, + double? f3, + List? dvec, + List? fvec, }) : _d0 = d0, _d1 = d1, @@ -212,16 +204,13 @@ class MonsterExtraObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int dvecOffset = _dvec?.isNotEmpty == true - ? fbBuilder.writeListFloat64(_dvec) + int finish(fb.Builder fbBuilder) { + final int? dvecOffset = _dvec?.isNotEmpty == true + ? fbBuilder.writeListFloat64(_dvec!) : null; - final int fvecOffset = _fvec?.isNotEmpty == true - ? fbBuilder.writeListFloat32(_fvec) + final int? fvecOffset = _fvec?.isNotEmpty == true + ? fbBuilder.writeListFloat32(_fvec!) : null; - fbBuilder.startTable(); fbBuilder.addFloat64(0, _d0); fbBuilder.addFloat64(1, _d1); @@ -231,18 +220,14 @@ class MonsterExtraObjectBuilder extends fb.ObjectBuilder { fbBuilder.addFloat32(5, _f1); fbBuilder.addFloat32(6, _f2); fbBuilder.addFloat32(7, _f3); - if (dvecOffset != null) { - fbBuilder.addOffset(8, dvecOffset); - } - if (fvecOffset != null) { - fbBuilder.addOffset(9, fvecOffset); - } + fbBuilder.addOffset(8, dvecOffset); + fbBuilder.addOffset(9, fvecOffset); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/tests/monster_test_my_game.example2_generated.dart b/tests/monster_test_my_game.example2_generated.dart index d1c6a03abf1..92d7c911bea 100644 --- a/tests/monster_test_my_game.example2_generated.dart +++ b/tests/monster_test_my_game.example2_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library my_game.example2; @@ -29,7 +29,7 @@ class Monster { MonsterT unpack() => MonsterT(); - static int pack(fb.Builder fbBuilder, MonsterT object) { + static int pack(fb.Builder fbBuilder, MonsterT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -37,8 +37,6 @@ class Monster { class MonsterT { int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.startTable(); return fbBuilder.endTable(); } @@ -63,17 +61,14 @@ class MonsterObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.startTable(); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/tests/monster_test_my_game.example_generated.dart b/tests/monster_test_my_game.example_generated.dart index 75302f9fe47..36ada7d5f19 100644 --- a/tests/monster_test_my_game.example_generated.dart +++ b/tests/monster_test_my_game.example_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library my_game.example; @@ -15,13 +15,16 @@ class Color { const Color._(this.value); factory Color.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum Color'); } - return values[value]; + return result; } + static Color? _createOrNull(int? value) => + value == null ? null : Color.fromValue(value); + static bool containsValue(int value) => values.containsKey(value); static const Color Red = const Color._(1); @@ -32,7 +35,10 @@ class Color { /// \brief color Blue (1u << 3) static const Color Blue = const Color._(8); - static const Map values = {1: Red,2: Green,8: Blue,}; + static const Map values = { + 1: Red, + 2: Green, + 8: Blue}; static const fb.Reader reader = const _ColorReader(); @@ -58,13 +64,16 @@ class Race { const Race._(this.value); factory Race.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum Race'); } - return values[value]; + return result; } + static Race? _createOrNull(int? value) => + value == null ? null : Race.fromValue(value); + static const int minValue = -1; static const int maxValue = 2; static bool containsValue(int value) => values.containsKey(value); @@ -73,7 +82,11 @@ class Race { static const Race Human = const Race._(0); static const Race Dwarf = const Race._(1); static const Race Elf = const Race._(2); - static const Map values = {-1: None,0: Human,1: Dwarf,2: Elf,}; + static const Map values = { + -1: None, + 0: Human, + 1: Dwarf, + 2: Elf}; static const fb.Reader reader = const _RaceReader(); @@ -99,13 +112,16 @@ class AnyTypeId { const AnyTypeId._(this.value); factory AnyTypeId.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum AnyTypeId'); } - return values[value]; + return result; } + static AnyTypeId? _createOrNull(int? value) => + value == null ? null : AnyTypeId.fromValue(value); + static const int minValue = 0; static const int maxValue = 3; static bool containsValue(int value) => values.containsKey(value); @@ -114,7 +130,11 @@ class AnyTypeId { static const AnyTypeId Monster = const AnyTypeId._(1); static const AnyTypeId TestSimpleTableWithEnum = const AnyTypeId._(2); static const AnyTypeId MyGame_Example2_Monster = const AnyTypeId._(3); - static const Map values = {0: NONE,1: Monster,2: TestSimpleTableWithEnum,3: MyGame_Example2_Monster,}; + static const Map values = { + 0: NONE, + 1: Monster, + 2: TestSimpleTableWithEnum, + 3: MyGame_Example2_Monster}; static const fb.Reader reader = const _AnyTypeIdReader(); @@ -140,13 +160,16 @@ class AnyUniqueAliasesTypeId { const AnyUniqueAliasesTypeId._(this.value); factory AnyUniqueAliasesTypeId.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum AnyUniqueAliasesTypeId'); } - return values[value]; + return result; } + static AnyUniqueAliasesTypeId? _createOrNull(int? value) => + value == null ? null : AnyUniqueAliasesTypeId.fromValue(value); + static const int minValue = 0; static const int maxValue = 3; static bool containsValue(int value) => values.containsKey(value); @@ -155,7 +178,11 @@ class AnyUniqueAliasesTypeId { static const AnyUniqueAliasesTypeId M = const AnyUniqueAliasesTypeId._(1); static const AnyUniqueAliasesTypeId TS = const AnyUniqueAliasesTypeId._(2); static const AnyUniqueAliasesTypeId M2 = const AnyUniqueAliasesTypeId._(3); - static const Map values = {0: NONE,1: M,2: TS,3: M2,}; + static const Map values = { + 0: NONE, + 1: M, + 2: TS, + 3: M2}; static const fb.Reader reader = const _AnyUniqueAliasesTypeIdReader(); @@ -181,13 +208,16 @@ class AnyAmbiguousAliasesTypeId { const AnyAmbiguousAliasesTypeId._(this.value); factory AnyAmbiguousAliasesTypeId.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum AnyAmbiguousAliasesTypeId'); } - return values[value]; + return result; } + static AnyAmbiguousAliasesTypeId? _createOrNull(int? value) => + value == null ? null : AnyAmbiguousAliasesTypeId.fromValue(value); + static const int minValue = 0; static const int maxValue = 3; static bool containsValue(int value) => values.containsKey(value); @@ -196,7 +226,11 @@ class AnyAmbiguousAliasesTypeId { static const AnyAmbiguousAliasesTypeId M1 = const AnyAmbiguousAliasesTypeId._(1); static const AnyAmbiguousAliasesTypeId M2 = const AnyAmbiguousAliasesTypeId._(2); static const AnyAmbiguousAliasesTypeId M3 = const AnyAmbiguousAliasesTypeId._(3); - static const Map values = {0: NONE,1: M1,2: M2,3: M3,}; + static const Map values = { + 0: NONE, + 1: M1, + 2: M2, + 3: M3}; static const fb.Reader reader = const _AnyAmbiguousAliasesTypeIdReader(); @@ -237,7 +271,7 @@ class Test { a: a, b: b); - static int pack(fb.Builder fbBuilder, TestT object) { + static int pack(fb.Builder fbBuilder, TestT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -248,12 +282,10 @@ class TestT { int b; TestT({ - this.a, - this.b}); + required this.a, + required this.b}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.pad(1); fbBuilder.putInt8(b); fbBuilder.putInt16(a); @@ -278,9 +310,7 @@ class _TestReader extends fb.StructReader { } class TestBuilder { - TestBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + TestBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -298,18 +328,15 @@ class TestObjectBuilder extends fb.ObjectBuilder { final int _b; TestObjectBuilder({ - int a, - int b, + required int a, + required int b, }) : _a = a, _b = b; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.pad(1); fbBuilder.putInt8(_b); fbBuilder.putInt16(_a); @@ -318,7 +345,7 @@ class TestObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -336,7 +363,7 @@ class TestSimpleTableWithEnum { final fb.BufferContext _bc; final int _bcOffset; - Color get color => new Color.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 4, 2)); + Color get color => Color.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 4, 2)); @override String toString() { @@ -346,7 +373,7 @@ class TestSimpleTableWithEnum { TestSimpleTableWithEnumT unpack() => TestSimpleTableWithEnumT( color: color); - static int pack(fb.Builder fbBuilder, TestSimpleTableWithEnumT object) { + static int pack(fb.Builder fbBuilder, TestSimpleTableWithEnumT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -356,13 +383,11 @@ class TestSimpleTableWithEnumT { Color color; TestSimpleTableWithEnumT({ - this.color}); + this.color = Color.Green}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.startTable(); - fbBuilder.addUint8(0, color?.value); + fbBuilder.addUint8(0, color.value); return fbBuilder.endTable(); } @@ -381,9 +406,7 @@ class _TestSimpleTableWithEnumReader extends fb.TableReader const fb.Float32Reader().read(_bc, _bcOffset + 4); double get z => const fb.Float32Reader().read(_bc, _bcOffset + 8); double get test1 => const fb.Float64Reader().read(_bc, _bcOffset + 16); - Color get test2 => new Color.fromValue(const fb.Uint8Reader().read(_bc, _bcOffset + 24)); + Color get test2 => Color.fromValue(const fb.Uint8Reader().read(_bc, _bcOffset + 24)); Test get test3 => Test.reader.read(_bc, _bcOffset + 26); @override @@ -454,9 +474,9 @@ class Vec3 { z: z, test1: test1, test2: test2, - test3: test3?.unpack()); + test3: test3.unpack()); - static int pack(fb.Builder fbBuilder, Vec3T object) { + static int pack(fb.Builder fbBuilder, Vec3T? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -471,20 +491,18 @@ class Vec3T { TestT test3; Vec3T({ - this.x, - this.y, - this.z, - this.test1, - this.test2, - this.test3}); + required this.x, + required this.y, + required this.z, + required this.test1, + required this.test2, + required this.test3}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.pad(2); test3.pack(fbBuilder); fbBuilder.pad(1); - fbBuilder.putUint8(test2?.value); + fbBuilder.putUint8(test2.value); fbBuilder.putFloat64(test1); fbBuilder.pad(4); fbBuilder.putFloat32(z); @@ -511,9 +529,7 @@ class _Vec3Reader extends fb.StructReader { } class Vec3Builder { - Vec3Builder(this.fbBuilder) { - assert(fbBuilder != null); - } + Vec3Builder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -521,7 +537,7 @@ class Vec3Builder { fbBuilder.pad(2); test3(); fbBuilder.pad(1); - fbBuilder.putUint8(test2?.value); + fbBuilder.putUint8(test2.value); fbBuilder.putFloat64(test1); fbBuilder.pad(4); fbBuilder.putFloat32(z); @@ -541,12 +557,12 @@ class Vec3ObjectBuilder extends fb.ObjectBuilder { final TestObjectBuilder _test3; Vec3ObjectBuilder({ - double x, - double y, - double z, - double test1, - Color test2, - TestObjectBuilder test3, + required double x, + required double y, + required double z, + required double test1, + required Color test2, + required TestObjectBuilder test3, }) : _x = x, _y = y, @@ -557,14 +573,11 @@ class Vec3ObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.pad(2); _test3.finish(fbBuilder); fbBuilder.pad(1); - fbBuilder.putUint8(_test2?.value); + fbBuilder.putUint8(_test2.value); fbBuilder.putFloat64(_test1); fbBuilder.pad(4); fbBuilder.putFloat32(_z); @@ -575,7 +588,7 @@ class Vec3ObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -601,7 +614,7 @@ class Ability { id: id, distance: distance); - static int pack(fb.Builder fbBuilder, AbilityT object) { + static int pack(fb.Builder fbBuilder, AbilityT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -612,12 +625,10 @@ class AbilityT { int distance; AbilityT({ - this.id, - this.distance}); + required this.id, + required this.distance}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.putUint32(distance); fbBuilder.putUint32(id); return fbBuilder.offset; @@ -641,9 +652,7 @@ class _AbilityReader extends fb.StructReader { } class AbilityBuilder { - AbilityBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + AbilityBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -660,18 +669,15 @@ class AbilityObjectBuilder extends fb.ObjectBuilder { final int _distance; AbilityObjectBuilder({ - int id, - int distance, + required int id, + required int distance, }) : _id = id, _distance = distance; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.putUint32(_distance); fbBuilder.putUint32(_id); return fbBuilder.offset; @@ -679,7 +685,7 @@ class AbilityObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -703,11 +709,11 @@ class StructOfStructs { } StructOfStructsT unpack() => StructOfStructsT( - a: a?.unpack(), - b: b?.unpack(), - c: c?.unpack()); + a: a.unpack(), + b: b.unpack(), + c: c.unpack()); - static int pack(fb.Builder fbBuilder, StructOfStructsT object) { + static int pack(fb.Builder fbBuilder, StructOfStructsT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -719,13 +725,11 @@ class StructOfStructsT { AbilityT c; StructOfStructsT({ - this.a, - this.b, - this.c}); + required this.a, + required this.b, + required this.c}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - c.pack(fbBuilder); b.pack(fbBuilder); a.pack(fbBuilder); @@ -750,9 +754,7 @@ class _StructOfStructsReader extends fb.StructReader { } class StructOfStructsBuilder { - StructOfStructsBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + StructOfStructsBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -771,9 +773,9 @@ class StructOfStructsObjectBuilder extends fb.ObjectBuilder { final AbilityObjectBuilder _c; StructOfStructsObjectBuilder({ - AbilityObjectBuilder a, - TestObjectBuilder b, - AbilityObjectBuilder c, + required AbilityObjectBuilder a, + required TestObjectBuilder b, + required AbilityObjectBuilder c, }) : _a = a, _b = b, @@ -781,10 +783,7 @@ class StructOfStructsObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { _c.finish(fbBuilder); _b.finish(fbBuilder); _a.finish(fbBuilder); @@ -793,7 +792,7 @@ class StructOfStructsObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -811,7 +810,7 @@ class Stat { final fb.BufferContext _bc; final int _bcOffset; - String get id => const fb.StringReader().vTableGet(_bc, _bcOffset, 4, null); + String? get id => const fb.StringReader().vTableGetNullable(_bc, _bcOffset, 4); int get val => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 6, 0); int get count => const fb.Uint16Reader().vTableGet(_bc, _bcOffset, 8, 0); @@ -825,30 +824,26 @@ class Stat { val: val, count: count); - static int pack(fb.Builder fbBuilder, StatT object) { + static int pack(fb.Builder fbBuilder, StatT? object) { if (object == null) return 0; return object.pack(fbBuilder); } } class StatT { - String id; + String? id; int val; int count; StatT({ this.id, - this.val, - this.count}); + this.val = 0, + this.count = 0}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int idOffset = fbBuilder.writeString(id); - + final int? idOffset = fbBuilder.writeString(id); fbBuilder.startTable(); - if (idOffset != null) { - fbBuilder.addOffset(0, idOffset); - } + fbBuilder.addOffset(0, idOffset); fbBuilder.addInt64(1, val); fbBuilder.addUint16(2, count); return fbBuilder.endTable(); @@ -869,9 +864,7 @@ class _StatReader extends fb.TableReader { } class StatBuilder { - StatBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + StatBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -879,15 +872,15 @@ class StatBuilder { fbBuilder.startTable(); } - int addIdOffset(int offset) { + int addIdOffset(int? offset) { fbBuilder.addOffset(0, offset); return fbBuilder.offset; } - int addVal(int val) { + int addVal(int? val) { fbBuilder.addInt64(1, val); return fbBuilder.offset; } - int addCount(int count) { + int addCount(int? count) { fbBuilder.addUint16(2, count); return fbBuilder.offset; } @@ -898,14 +891,14 @@ class StatBuilder { } class StatObjectBuilder extends fb.ObjectBuilder { - final String _id; - final int _val; - final int _count; + final String? _id; + final int? _val; + final int? _count; StatObjectBuilder({ - String id, - int val, - int count, + String? id, + int? val, + int? count, }) : _id = id, _val = val, @@ -913,15 +906,10 @@ class StatObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int idOffset = fbBuilder.writeString(_id); - + int finish(fb.Builder fbBuilder) { + final int? idOffset = fbBuilder.writeString(_id); fbBuilder.startTable(); - if (idOffset != null) { - fbBuilder.addOffset(0, idOffset); - } + fbBuilder.addOffset(0, idOffset); fbBuilder.addInt64(1, _val); fbBuilder.addUint16(2, _count); return fbBuilder.endTable(); @@ -929,7 +917,7 @@ class StatObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -957,7 +945,7 @@ class Referrable { ReferrableT unpack() => ReferrableT( id: id); - static int pack(fb.Builder fbBuilder, ReferrableT object) { + static int pack(fb.Builder fbBuilder, ReferrableT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -967,11 +955,9 @@ class ReferrableT { int id; ReferrableT({ - this.id}); + this.id = 0}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.startTable(); fbBuilder.addUint64(0, id); return fbBuilder.endTable(); @@ -992,9 +978,7 @@ class _ReferrableReader extends fb.TableReader { } class ReferrableBuilder { - ReferrableBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + ReferrableBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -1002,7 +986,7 @@ class ReferrableBuilder { fbBuilder.startTable(); } - int addId(int id) { + int addId(int? id) { fbBuilder.addUint64(0, id); return fbBuilder.offset; } @@ -1013,19 +997,16 @@ class ReferrableBuilder { } class ReferrableObjectBuilder extends fb.ObjectBuilder { - final int _id; + final int? _id; ReferrableObjectBuilder({ - int id, + int? id, }) : _id = id; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.startTable(); fbBuilder.addUint64(0, _id); return fbBuilder.endTable(); @@ -1033,7 +1014,7 @@ class ReferrableObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -1052,29 +1033,29 @@ class Monster { final fb.BufferContext _bc; final int _bcOffset; - Vec3 get pos => Vec3.reader.vTableGet(_bc, _bcOffset, 4, null); + Vec3? get pos => Vec3.reader.vTableGetNullable(_bc, _bcOffset, 4); int get mana => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 150); int get hp => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 100); - String get name => const fb.StringReader().vTableGet(_bc, _bcOffset, 10, null); - List get inventory => const fb.ListReader(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 14, null); - Color get color => new Color.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 16, 8)); - AnyTypeId get testType => new AnyTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 18, 0)); - dynamic get test { + String? get name => const fb.StringReader().vTableGetNullable(_bc, _bcOffset, 10); + List? get inventory => const fb.ListReader(const fb.Uint8Reader()).vTableGetNullable(_bc, _bcOffset, 14); + Color get color => Color.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 16, 8)); + AnyTypeId? get testType => AnyTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 18)); + dynamic? get test { switch (testType?.value) { - case 1: return Monster.reader.vTableGet(_bc, _bcOffset, 20, null); - case 2: return TestSimpleTableWithEnum.reader.vTableGet(_bc, _bcOffset, 20, null); - case 3: return my_game_example2.Monster.reader.vTableGet(_bc, _bcOffset, 20, null); + case 1: return Monster.reader.vTableGetNullable(_bc, _bcOffset, 20); + case 2: return TestSimpleTableWithEnum.reader.vTableGetNullable(_bc, _bcOffset, 20); + case 3: return my_game_example2.Monster.reader.vTableGetNullable(_bc, _bcOffset, 20); default: return null; } } - List get test4 => const fb.ListReader(Test.reader).vTableGet(_bc, _bcOffset, 22, null); - List get testarrayofstring => const fb.ListReader(const fb.StringReader()).vTableGet(_bc, _bcOffset, 24, null); + List? get test4 => const fb.ListReader(Test.reader).vTableGetNullable(_bc, _bcOffset, 22); + List? get testarrayofstring => const fb.ListReader(const fb.StringReader()).vTableGetNullable(_bc, _bcOffset, 24); /// an example documentation comment: this will end up in the generated code /// multiline too - List get testarrayoftables => const fb.ListReader(Monster.reader).vTableGet(_bc, _bcOffset, 26, null); - Monster get enemy => Monster.reader.vTableGet(_bc, _bcOffset, 28, null); - List get testnestedflatbuffer => const fb.ListReader(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 30, null); - Stat get testempty => Stat.reader.vTableGet(_bc, _bcOffset, 32, null); + List? get testarrayoftables => const fb.ListReader(Monster.reader).vTableGetNullable(_bc, _bcOffset, 26); + Monster? get enemy => Monster.reader.vTableGetNullable(_bc, _bcOffset, 28); + List? get testnestedflatbuffer => const fb.ListReader(const fb.Uint8Reader()).vTableGetNullable(_bc, _bcOffset, 30); + Stat? get testempty => Stat.reader.vTableGetNullable(_bc, _bcOffset, 32); bool get testbool => const fb.BoolReader().vTableGet(_bc, _bcOffset, 34, false); int get testhashs32Fnv1 => const fb.Int32Reader().vTableGet(_bc, _bcOffset, 36, 0); int get testhashu32Fnv1 => const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 38, 0); @@ -1084,47 +1065,47 @@ class Monster { int get testhashu32Fnv1a => const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 46, 0); int get testhashs64Fnv1a => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 48, 0); int get testhashu64Fnv1a => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 50, 0); - List get testarrayofbools => const fb.ListReader(const fb.BoolReader()).vTableGet(_bc, _bcOffset, 52, null); + List? get testarrayofbools => const fb.ListReader(const fb.BoolReader()).vTableGetNullable(_bc, _bcOffset, 52); double get testf => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 54, 3.14159); double get testf2 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 56, 3.0); double get testf3 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 58, 0.0); - List get testarrayofstring2 => const fb.ListReader(const fb.StringReader()).vTableGet(_bc, _bcOffset, 60, null); - List get testarrayofsortedstruct => const fb.ListReader(Ability.reader).vTableGet(_bc, _bcOffset, 62, null); - List get flex => const fb.ListReader(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 64, null); - List get test5 => const fb.ListReader(Test.reader).vTableGet(_bc, _bcOffset, 66, null); - List get vectorOfLongs => const fb.ListReader(const fb.Int64Reader()).vTableGet(_bc, _bcOffset, 68, null); - List get vectorOfDoubles => const fb.ListReader(const fb.Float64Reader()).vTableGet(_bc, _bcOffset, 70, null); - my_game.InParentNamespace get parentNamespaceTest => my_game.InParentNamespace.reader.vTableGet(_bc, _bcOffset, 72, null); - List get vectorOfReferrables => const fb.ListReader(Referrable.reader).vTableGet(_bc, _bcOffset, 74, null); + List? get testarrayofstring2 => const fb.ListReader(const fb.StringReader()).vTableGetNullable(_bc, _bcOffset, 60); + List? get testarrayofsortedstruct => const fb.ListReader(Ability.reader).vTableGetNullable(_bc, _bcOffset, 62); + List? get flex => const fb.ListReader(const fb.Uint8Reader()).vTableGetNullable(_bc, _bcOffset, 64); + List? get test5 => const fb.ListReader(Test.reader).vTableGetNullable(_bc, _bcOffset, 66); + List? get vectorOfLongs => const fb.ListReader(const fb.Int64Reader()).vTableGetNullable(_bc, _bcOffset, 68); + List? get vectorOfDoubles => const fb.ListReader(const fb.Float64Reader()).vTableGetNullable(_bc, _bcOffset, 70); + my_game.InParentNamespace? get parentNamespaceTest => my_game.InParentNamespace.reader.vTableGetNullable(_bc, _bcOffset, 72); + List? get vectorOfReferrables => const fb.ListReader(Referrable.reader).vTableGetNullable(_bc, _bcOffset, 74); int get singleWeakReference => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 76, 0); - List get vectorOfWeakReferences => const fb.ListReader(const fb.Uint64Reader()).vTableGet(_bc, _bcOffset, 78, null); - List get vectorOfStrongReferrables => const fb.ListReader(Referrable.reader).vTableGet(_bc, _bcOffset, 80, null); + List? get vectorOfWeakReferences => const fb.ListReader(const fb.Uint64Reader()).vTableGetNullable(_bc, _bcOffset, 78); + List? get vectorOfStrongReferrables => const fb.ListReader(Referrable.reader).vTableGetNullable(_bc, _bcOffset, 80); int get coOwningReference => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 82, 0); - List get vectorOfCoOwningReferences => const fb.ListReader(const fb.Uint64Reader()).vTableGet(_bc, _bcOffset, 84, null); + List? get vectorOfCoOwningReferences => const fb.ListReader(const fb.Uint64Reader()).vTableGetNullable(_bc, _bcOffset, 84); int get nonOwningReference => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 86, 0); - List get vectorOfNonOwningReferences => const fb.ListReader(const fb.Uint64Reader()).vTableGet(_bc, _bcOffset, 88, null); - AnyUniqueAliasesTypeId get anyUniqueType => new AnyUniqueAliasesTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 90, 0)); - dynamic get anyUnique { + List? get vectorOfNonOwningReferences => const fb.ListReader(const fb.Uint64Reader()).vTableGetNullable(_bc, _bcOffset, 88); + AnyUniqueAliasesTypeId? get anyUniqueType => AnyUniqueAliasesTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 90)); + dynamic? get anyUnique { switch (anyUniqueType?.value) { - case 1: return Monster.reader.vTableGet(_bc, _bcOffset, 92, null); - case 2: return TestSimpleTableWithEnum.reader.vTableGet(_bc, _bcOffset, 92, null); - case 3: return my_game_example2.Monster.reader.vTableGet(_bc, _bcOffset, 92, null); + case 1: return Monster.reader.vTableGetNullable(_bc, _bcOffset, 92); + case 2: return TestSimpleTableWithEnum.reader.vTableGetNullable(_bc, _bcOffset, 92); + case 3: return my_game_example2.Monster.reader.vTableGetNullable(_bc, _bcOffset, 92); default: return null; } } - AnyAmbiguousAliasesTypeId get anyAmbiguousType => new AnyAmbiguousAliasesTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 94, 0)); - dynamic get anyAmbiguous { + AnyAmbiguousAliasesTypeId? get anyAmbiguousType => AnyAmbiguousAliasesTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 94)); + dynamic? get anyAmbiguous { switch (anyAmbiguousType?.value) { - case 1: return Monster.reader.vTableGet(_bc, _bcOffset, 96, null); - case 2: return Monster.reader.vTableGet(_bc, _bcOffset, 96, null); - case 3: return Monster.reader.vTableGet(_bc, _bcOffset, 96, null); + case 1: return Monster.reader.vTableGetNullable(_bc, _bcOffset, 96); + case 2: return Monster.reader.vTableGetNullable(_bc, _bcOffset, 96); + case 3: return Monster.reader.vTableGetNullable(_bc, _bcOffset, 96); default: return null; } } - List get vectorOfEnums => const fb.ListReader(Color.reader).vTableGet(_bc, _bcOffset, 98, null); - Race get signedEnum => new Race.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 100, -1)); - List get testrequirednestedflatbuffer => const fb.ListReader(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 102, null); - List get scalarKeySortedTables => const fb.ListReader(Stat.reader).vTableGet(_bc, _bcOffset, 104, null); + List? get vectorOfEnums => const fb.ListReader(Color.reader).vTableGetNullable(_bc, _bcOffset, 98); + Race get signedEnum => Race.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 100, -1)); + List? get testrequirednestedflatbuffer => const fb.ListReader(const fb.Uint8Reader()).vTableGetNullable(_bc, _bcOffset, 102); + List? get scalarKeySortedTables => const fb.ListReader(Stat.reader).vTableGetNullable(_bc, _bcOffset, 104); @override String toString() { @@ -1140,9 +1121,9 @@ class Monster { color: color, testType: testType, test: test, - test4: test4?.map((e) => e.unpack())?.toList(), + test4: test4?.map((e) => e.unpack()).toList(), testarrayofstring: testarrayofstring, - testarrayoftables: testarrayoftables?.map((e) => e.unpack())?.toList(), + testarrayoftables: testarrayoftables?.map((e) => e.unpack()).toList(), enemy: enemy?.unpack(), testnestedflatbuffer: testnestedflatbuffer, testempty: testempty?.unpack(), @@ -1160,16 +1141,16 @@ class Monster { testf2: testf2, testf3: testf3, testarrayofstring2: testarrayofstring2, - testarrayofsortedstruct: testarrayofsortedstruct?.map((e) => e.unpack())?.toList(), + testarrayofsortedstruct: testarrayofsortedstruct?.map((e) => e.unpack()).toList(), flex: flex, - test5: test5?.map((e) => e.unpack())?.toList(), + test5: test5?.map((e) => e.unpack()).toList(), vectorOfLongs: vectorOfLongs, vectorOfDoubles: vectorOfDoubles, parentNamespaceTest: parentNamespaceTest?.unpack(), - vectorOfReferrables: vectorOfReferrables?.map((e) => e.unpack())?.toList(), + vectorOfReferrables: vectorOfReferrables?.map((e) => e.unpack()).toList(), singleWeakReference: singleWeakReference, vectorOfWeakReferences: vectorOfWeakReferences, - vectorOfStrongReferrables: vectorOfStrongReferrables?.map((e) => e.unpack())?.toList(), + vectorOfStrongReferrables: vectorOfStrongReferrables?.map((e) => e.unpack()).toList(), coOwningReference: coOwningReference, vectorOfCoOwningReferences: vectorOfCoOwningReferences, nonOwningReference: nonOwningReference, @@ -1181,9 +1162,9 @@ class Monster { vectorOfEnums: vectorOfEnums, signedEnum: signedEnum, testrequirednestedflatbuffer: testrequirednestedflatbuffer, - scalarKeySortedTables: scalarKeySortedTables?.map((e) => e.unpack())?.toList()); + scalarKeySortedTables: scalarKeySortedTables?.map((e) => e.unpack()).toList()); - static int pack(fb.Builder fbBuilder, MonsterT object) { + static int pack(fb.Builder fbBuilder, MonsterT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -1191,22 +1172,22 @@ class Monster { /// an example documentation comment: "monster object" class MonsterT { - Vec3T pos; + Vec3T? pos; int mana; int hp; - String name; - List inventory; + String? name; + List? inventory; Color color; - AnyTypeId testType; - dynamic test; - List test4; - List testarrayofstring; + AnyTypeId? testType; + dynamic? test; + List? test4; + List? testarrayofstring; /// an example documentation comment: this will end up in the generated code /// multiline too - List testarrayoftables; - MonsterT enemy; - List testnestedflatbuffer; - StatT testempty; + List? testarrayoftables; + MonsterT? enemy; + List? testnestedflatbuffer; + StatT? testempty; bool testbool; int testhashs32Fnv1; int testhashu32Fnv1; @@ -1216,41 +1197,41 @@ class MonsterT { int testhashu32Fnv1a; int testhashs64Fnv1a; int testhashu64Fnv1a; - List testarrayofbools; + List? testarrayofbools; double testf; double testf2; double testf3; - List testarrayofstring2; - List testarrayofsortedstruct; - List flex; - List test5; - List vectorOfLongs; - List vectorOfDoubles; - my_game.InParentNamespaceT parentNamespaceTest; - List vectorOfReferrables; + List? testarrayofstring2; + List? testarrayofsortedstruct; + List? flex; + List? test5; + List? vectorOfLongs; + List? vectorOfDoubles; + my_game.InParentNamespaceT? parentNamespaceTest; + List? vectorOfReferrables; int singleWeakReference; - List vectorOfWeakReferences; - List vectorOfStrongReferrables; + List? vectorOfWeakReferences; + List? vectorOfStrongReferrables; int coOwningReference; - List vectorOfCoOwningReferences; + List? vectorOfCoOwningReferences; int nonOwningReference; - List vectorOfNonOwningReferences; - AnyUniqueAliasesTypeId anyUniqueType; - dynamic anyUnique; - AnyAmbiguousAliasesTypeId anyAmbiguousType; - dynamic anyAmbiguous; - List vectorOfEnums; + List? vectorOfNonOwningReferences; + AnyUniqueAliasesTypeId? anyUniqueType; + dynamic? anyUnique; + AnyAmbiguousAliasesTypeId? anyAmbiguousType; + dynamic? anyAmbiguous; + List? vectorOfEnums; Race signedEnum; - List testrequirednestedflatbuffer; - List scalarKeySortedTables; + List? testrequirednestedflatbuffer; + List? scalarKeySortedTables; MonsterT({ this.pos, - this.mana, - this.hp, + this.mana = 150, + this.hp = 100, this.name, this.inventory, - this.color, + this.color = Color.Blue, this.testType, this.test, this.test4, @@ -1259,19 +1240,19 @@ class MonsterT { this.enemy, this.testnestedflatbuffer, this.testempty, - this.testbool, - this.testhashs32Fnv1, - this.testhashu32Fnv1, - this.testhashs64Fnv1, - this.testhashu64Fnv1, - this.testhashs32Fnv1a, - this.testhashu32Fnv1a, - this.testhashs64Fnv1a, - this.testhashu64Fnv1a, + this.testbool = false, + this.testhashs32Fnv1 = 0, + this.testhashu32Fnv1 = 0, + this.testhashs64Fnv1 = 0, + this.testhashu64Fnv1 = 0, + this.testhashs32Fnv1a = 0, + this.testhashu32Fnv1a = 0, + this.testhashs64Fnv1a = 0, + this.testhashu64Fnv1a = 0, this.testarrayofbools, - this.testf, - this.testf2, - this.testf3, + this.testf = 3.14159, + this.testf2 = 3.0, + this.testf3 = 0.0, this.testarrayofstring2, this.testarrayofsortedstruct, this.flex, @@ -1280,133 +1261,113 @@ class MonsterT { this.vectorOfDoubles, this.parentNamespaceTest, this.vectorOfReferrables, - this.singleWeakReference, + this.singleWeakReference = 0, this.vectorOfWeakReferences, this.vectorOfStrongReferrables, - this.coOwningReference, + this.coOwningReference = 0, this.vectorOfCoOwningReferences, - this.nonOwningReference, + this.nonOwningReference = 0, this.vectorOfNonOwningReferences, this.anyUniqueType, this.anyUnique, this.anyAmbiguousType, this.anyAmbiguous, this.vectorOfEnums, - this.signedEnum, + this.signedEnum = Race.None, this.testrequirednestedflatbuffer, this.scalarKeySortedTables}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int nameOffset = fbBuilder.writeString(name); - final int inventoryOffset = inventory?.isNotEmpty == true - ? fbBuilder.writeListUint8(inventory) + final int? nameOffset = fbBuilder.writeString(name); + final int? inventoryOffset = inventory?.isNotEmpty == true + ? fbBuilder.writeListUint8(inventory!) : null; - final int testOffset = test?.pack(fbBuilder); - int test4Offset = null; + final int? testOffset = test?.pack(fbBuilder); + int? test4Offset = null; if (test4?.isNotEmpty == true) { - test4.forEach((e) => e.pack(fbBuilder)); - test4Offset = fbBuilder.endStructVector(test4.length); + test4!.forEach((e) => e.pack(fbBuilder)); + test4Offset = fbBuilder.endStructVector(test4!.length); } - final int testarrayofstringOffset = testarrayofstring?.isNotEmpty == true - ? fbBuilder.writeList(testarrayofstring.map((b) => fbBuilder.writeString(b)).toList()) + final int? testarrayofstringOffset = testarrayofstring?.isNotEmpty == true + ? fbBuilder.writeList(testarrayofstring!.map((b) => fbBuilder.writeString(b)!).toList()) : null; - final int testarrayoftablesOffset = testarrayoftables?.isNotEmpty == true - ? fbBuilder.writeList(testarrayoftables.map((b) => b.pack(fbBuilder)).toList()) + final int? testarrayoftablesOffset = testarrayoftables?.isNotEmpty == true + ? fbBuilder.writeList(testarrayoftables!.map((b) => b.pack(fbBuilder)).toList()) : null; - final int enemyOffset = enemy?.pack(fbBuilder); - final int testnestedflatbufferOffset = testnestedflatbuffer?.isNotEmpty == true - ? fbBuilder.writeListUint8(testnestedflatbuffer) + final int? enemyOffset = enemy?.pack(fbBuilder); + final int? testnestedflatbufferOffset = testnestedflatbuffer?.isNotEmpty == true + ? fbBuilder.writeListUint8(testnestedflatbuffer!) : null; - final int testemptyOffset = testempty?.pack(fbBuilder); - final int testarrayofboolsOffset = testarrayofbools?.isNotEmpty == true - ? fbBuilder.writeListBool(testarrayofbools) + final int? testemptyOffset = testempty?.pack(fbBuilder); + final int? testarrayofboolsOffset = testarrayofbools?.isNotEmpty == true + ? fbBuilder.writeListBool(testarrayofbools!) : null; - final int testarrayofstring2Offset = testarrayofstring2?.isNotEmpty == true - ? fbBuilder.writeList(testarrayofstring2.map((b) => fbBuilder.writeString(b)).toList()) + final int? testarrayofstring2Offset = testarrayofstring2?.isNotEmpty == true + ? fbBuilder.writeList(testarrayofstring2!.map((b) => fbBuilder.writeString(b)!).toList()) : null; - int testarrayofsortedstructOffset = null; + int? testarrayofsortedstructOffset = null; if (testarrayofsortedstruct?.isNotEmpty == true) { - testarrayofsortedstruct.forEach((e) => e.pack(fbBuilder)); - testarrayofsortedstructOffset = fbBuilder.endStructVector(testarrayofsortedstruct.length); + testarrayofsortedstruct!.forEach((e) => e.pack(fbBuilder)); + testarrayofsortedstructOffset = fbBuilder.endStructVector(testarrayofsortedstruct!.length); } - final int flexOffset = flex?.isNotEmpty == true - ? fbBuilder.writeListUint8(flex) + final int? flexOffset = flex?.isNotEmpty == true + ? fbBuilder.writeListUint8(flex!) : null; - int test5Offset = null; + int? test5Offset = null; if (test5?.isNotEmpty == true) { - test5.forEach((e) => e.pack(fbBuilder)); - test5Offset = fbBuilder.endStructVector(test5.length); + test5!.forEach((e) => e.pack(fbBuilder)); + test5Offset = fbBuilder.endStructVector(test5!.length); } - final int vectorOfLongsOffset = vectorOfLongs?.isNotEmpty == true - ? fbBuilder.writeListInt64(vectorOfLongs) + final int? vectorOfLongsOffset = vectorOfLongs?.isNotEmpty == true + ? fbBuilder.writeListInt64(vectorOfLongs!) : null; - final int vectorOfDoublesOffset = vectorOfDoubles?.isNotEmpty == true - ? fbBuilder.writeListFloat64(vectorOfDoubles) + final int? vectorOfDoublesOffset = vectorOfDoubles?.isNotEmpty == true + ? fbBuilder.writeListFloat64(vectorOfDoubles!) : null; - final int parentNamespaceTestOffset = parentNamespaceTest?.pack(fbBuilder); - final int vectorOfReferrablesOffset = vectorOfReferrables?.isNotEmpty == true - ? fbBuilder.writeList(vectorOfReferrables.map((b) => b.pack(fbBuilder)).toList()) + final int? parentNamespaceTestOffset = parentNamespaceTest?.pack(fbBuilder); + final int? vectorOfReferrablesOffset = vectorOfReferrables?.isNotEmpty == true + ? fbBuilder.writeList(vectorOfReferrables!.map((b) => b.pack(fbBuilder)).toList()) : null; - final int vectorOfWeakReferencesOffset = vectorOfWeakReferences?.isNotEmpty == true - ? fbBuilder.writeListUint64(vectorOfWeakReferences) + final int? vectorOfWeakReferencesOffset = vectorOfWeakReferences?.isNotEmpty == true + ? fbBuilder.writeListUint64(vectorOfWeakReferences!) : null; - final int vectorOfStrongReferrablesOffset = vectorOfStrongReferrables?.isNotEmpty == true - ? fbBuilder.writeList(vectorOfStrongReferrables.map((b) => b.pack(fbBuilder)).toList()) + final int? vectorOfStrongReferrablesOffset = vectorOfStrongReferrables?.isNotEmpty == true + ? fbBuilder.writeList(vectorOfStrongReferrables!.map((b) => b.pack(fbBuilder)).toList()) : null; - final int vectorOfCoOwningReferencesOffset = vectorOfCoOwningReferences?.isNotEmpty == true - ? fbBuilder.writeListUint64(vectorOfCoOwningReferences) + final int? vectorOfCoOwningReferencesOffset = vectorOfCoOwningReferences?.isNotEmpty == true + ? fbBuilder.writeListUint64(vectorOfCoOwningReferences!) : null; - final int vectorOfNonOwningReferencesOffset = vectorOfNonOwningReferences?.isNotEmpty == true - ? fbBuilder.writeListUint64(vectorOfNonOwningReferences) + final int? vectorOfNonOwningReferencesOffset = vectorOfNonOwningReferences?.isNotEmpty == true + ? fbBuilder.writeListUint64(vectorOfNonOwningReferences!) : null; - final int anyUniqueOffset = anyUnique?.pack(fbBuilder); - final int anyAmbiguousOffset = anyAmbiguous?.pack(fbBuilder); - final int vectorOfEnumsOffset = vectorOfEnums?.isNotEmpty == true - ? fbBuilder.writeListUint8(vectorOfEnums.map((f) => f.value).toList()) + final int? anyUniqueOffset = anyUnique?.pack(fbBuilder); + final int? anyAmbiguousOffset = anyAmbiguous?.pack(fbBuilder); + final int? vectorOfEnumsOffset = vectorOfEnums?.isNotEmpty == true + ? fbBuilder.writeListUint8(vectorOfEnums!.map((f) => f.value).toList()) : null; - final int testrequirednestedflatbufferOffset = testrequirednestedflatbuffer?.isNotEmpty == true - ? fbBuilder.writeListUint8(testrequirednestedflatbuffer) + final int? testrequirednestedflatbufferOffset = testrequirednestedflatbuffer?.isNotEmpty == true + ? fbBuilder.writeListUint8(testrequirednestedflatbuffer!) : null; - final int scalarKeySortedTablesOffset = scalarKeySortedTables?.isNotEmpty == true - ? fbBuilder.writeList(scalarKeySortedTables.map((b) => b.pack(fbBuilder)).toList()) + final int? scalarKeySortedTablesOffset = scalarKeySortedTables?.isNotEmpty == true + ? fbBuilder.writeList(scalarKeySortedTables!.map((b) => b.pack(fbBuilder)).toList()) : null; - fbBuilder.startTable(); if (pos != null) { - fbBuilder.addStruct(0, pos.pack(fbBuilder)); + fbBuilder.addStruct(0, pos!.pack(fbBuilder)); } fbBuilder.addInt16(1, mana); fbBuilder.addInt16(2, hp); - if (nameOffset != null) { - fbBuilder.addOffset(3, nameOffset); - } - if (inventoryOffset != null) { - fbBuilder.addOffset(5, inventoryOffset); - } - fbBuilder.addUint8(6, color?.value); + fbBuilder.addOffset(3, nameOffset); + fbBuilder.addOffset(5, inventoryOffset); + fbBuilder.addUint8(6, color.value); fbBuilder.addUint8(7, testType?.value); - if (testOffset != null) { - fbBuilder.addOffset(8, testOffset); - } - if (test4Offset != null) { - fbBuilder.addOffset(9, test4Offset); - } - if (testarrayofstringOffset != null) { - fbBuilder.addOffset(10, testarrayofstringOffset); - } - if (testarrayoftablesOffset != null) { - fbBuilder.addOffset(11, testarrayoftablesOffset); - } - if (enemyOffset != null) { - fbBuilder.addOffset(12, enemyOffset); - } - if (testnestedflatbufferOffset != null) { - fbBuilder.addOffset(13, testnestedflatbufferOffset); - } - if (testemptyOffset != null) { - fbBuilder.addOffset(14, testemptyOffset); - } + fbBuilder.addOffset(8, testOffset); + fbBuilder.addOffset(9, test4Offset); + fbBuilder.addOffset(10, testarrayofstringOffset); + fbBuilder.addOffset(11, testarrayoftablesOffset); + fbBuilder.addOffset(12, enemyOffset); + fbBuilder.addOffset(13, testnestedflatbufferOffset); + fbBuilder.addOffset(14, testemptyOffset); fbBuilder.addBool(15, testbool); fbBuilder.addInt32(16, testhashs32Fnv1); fbBuilder.addUint32(17, testhashu32Fnv1); @@ -1416,69 +1377,33 @@ class MonsterT { fbBuilder.addUint32(21, testhashu32Fnv1a); fbBuilder.addInt64(22, testhashs64Fnv1a); fbBuilder.addUint64(23, testhashu64Fnv1a); - if (testarrayofboolsOffset != null) { - fbBuilder.addOffset(24, testarrayofboolsOffset); - } + fbBuilder.addOffset(24, testarrayofboolsOffset); fbBuilder.addFloat32(25, testf); fbBuilder.addFloat32(26, testf2); fbBuilder.addFloat32(27, testf3); - if (testarrayofstring2Offset != null) { - fbBuilder.addOffset(28, testarrayofstring2Offset); - } - if (testarrayofsortedstructOffset != null) { - fbBuilder.addOffset(29, testarrayofsortedstructOffset); - } - if (flexOffset != null) { - fbBuilder.addOffset(30, flexOffset); - } - if (test5Offset != null) { - fbBuilder.addOffset(31, test5Offset); - } - if (vectorOfLongsOffset != null) { - fbBuilder.addOffset(32, vectorOfLongsOffset); - } - if (vectorOfDoublesOffset != null) { - fbBuilder.addOffset(33, vectorOfDoublesOffset); - } - if (parentNamespaceTestOffset != null) { - fbBuilder.addOffset(34, parentNamespaceTestOffset); - } - if (vectorOfReferrablesOffset != null) { - fbBuilder.addOffset(35, vectorOfReferrablesOffset); - } + fbBuilder.addOffset(28, testarrayofstring2Offset); + fbBuilder.addOffset(29, testarrayofsortedstructOffset); + fbBuilder.addOffset(30, flexOffset); + fbBuilder.addOffset(31, test5Offset); + fbBuilder.addOffset(32, vectorOfLongsOffset); + fbBuilder.addOffset(33, vectorOfDoublesOffset); + fbBuilder.addOffset(34, parentNamespaceTestOffset); + fbBuilder.addOffset(35, vectorOfReferrablesOffset); fbBuilder.addUint64(36, singleWeakReference); - if (vectorOfWeakReferencesOffset != null) { - fbBuilder.addOffset(37, vectorOfWeakReferencesOffset); - } - if (vectorOfStrongReferrablesOffset != null) { - fbBuilder.addOffset(38, vectorOfStrongReferrablesOffset); - } + fbBuilder.addOffset(37, vectorOfWeakReferencesOffset); + fbBuilder.addOffset(38, vectorOfStrongReferrablesOffset); fbBuilder.addUint64(39, coOwningReference); - if (vectorOfCoOwningReferencesOffset != null) { - fbBuilder.addOffset(40, vectorOfCoOwningReferencesOffset); - } + fbBuilder.addOffset(40, vectorOfCoOwningReferencesOffset); fbBuilder.addUint64(41, nonOwningReference); - if (vectorOfNonOwningReferencesOffset != null) { - fbBuilder.addOffset(42, vectorOfNonOwningReferencesOffset); - } + fbBuilder.addOffset(42, vectorOfNonOwningReferencesOffset); fbBuilder.addUint8(43, anyUniqueType?.value); - if (anyUniqueOffset != null) { - fbBuilder.addOffset(44, anyUniqueOffset); - } + fbBuilder.addOffset(44, anyUniqueOffset); fbBuilder.addUint8(45, anyAmbiguousType?.value); - if (anyAmbiguousOffset != null) { - fbBuilder.addOffset(46, anyAmbiguousOffset); - } - if (vectorOfEnumsOffset != null) { - fbBuilder.addOffset(47, vectorOfEnumsOffset); - } - fbBuilder.addInt8(48, signedEnum?.value); - if (testrequirednestedflatbufferOffset != null) { - fbBuilder.addOffset(49, testrequirednestedflatbufferOffset); - } - if (scalarKeySortedTablesOffset != null) { - fbBuilder.addOffset(50, scalarKeySortedTablesOffset); - } + fbBuilder.addOffset(46, anyAmbiguousOffset); + fbBuilder.addOffset(47, vectorOfEnumsOffset); + fbBuilder.addInt8(48, signedEnum.value); + fbBuilder.addOffset(49, testrequirednestedflatbufferOffset); + fbBuilder.addOffset(50, scalarKeySortedTablesOffset); return fbBuilder.endTable(); } @@ -1497,9 +1422,7 @@ class _MonsterReader extends fb.TableReader { } class MonsterBuilder { - MonsterBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + MonsterBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -1511,199 +1434,199 @@ class MonsterBuilder { fbBuilder.addStruct(0, offset); return fbBuilder.offset; } - int addMana(int mana) { + int addMana(int? mana) { fbBuilder.addInt16(1, mana); return fbBuilder.offset; } - int addHp(int hp) { + int addHp(int? hp) { fbBuilder.addInt16(2, hp); return fbBuilder.offset; } - int addNameOffset(int offset) { + int addNameOffset(int? offset) { fbBuilder.addOffset(3, offset); return fbBuilder.offset; } - int addInventoryOffset(int offset) { + int addInventoryOffset(int? offset) { fbBuilder.addOffset(5, offset); return fbBuilder.offset; } - int addColor(Color color) { + int addColor(Color? color) { fbBuilder.addUint8(6, color?.value); return fbBuilder.offset; } - int addTestType(AnyTypeId testType) { + int addTestType(AnyTypeId? testType) { fbBuilder.addUint8(7, testType?.value); return fbBuilder.offset; } - int addTestOffset(int offset) { + int addTestOffset(int? offset) { fbBuilder.addOffset(8, offset); return fbBuilder.offset; } - int addTest4Offset(int offset) { + int addTest4Offset(int? offset) { fbBuilder.addOffset(9, offset); return fbBuilder.offset; } - int addTestarrayofstringOffset(int offset) { + int addTestarrayofstringOffset(int? offset) { fbBuilder.addOffset(10, offset); return fbBuilder.offset; } - int addTestarrayoftablesOffset(int offset) { + int addTestarrayoftablesOffset(int? offset) { fbBuilder.addOffset(11, offset); return fbBuilder.offset; } - int addEnemyOffset(int offset) { + int addEnemyOffset(int? offset) { fbBuilder.addOffset(12, offset); return fbBuilder.offset; } - int addTestnestedflatbufferOffset(int offset) { + int addTestnestedflatbufferOffset(int? offset) { fbBuilder.addOffset(13, offset); return fbBuilder.offset; } - int addTestemptyOffset(int offset) { + int addTestemptyOffset(int? offset) { fbBuilder.addOffset(14, offset); return fbBuilder.offset; } - int addTestbool(bool testbool) { + int addTestbool(bool? testbool) { fbBuilder.addBool(15, testbool); return fbBuilder.offset; } - int addTesthashs32Fnv1(int testhashs32Fnv1) { + int addTesthashs32Fnv1(int? testhashs32Fnv1) { fbBuilder.addInt32(16, testhashs32Fnv1); return fbBuilder.offset; } - int addTesthashu32Fnv1(int testhashu32Fnv1) { + int addTesthashu32Fnv1(int? testhashu32Fnv1) { fbBuilder.addUint32(17, testhashu32Fnv1); return fbBuilder.offset; } - int addTesthashs64Fnv1(int testhashs64Fnv1) { + int addTesthashs64Fnv1(int? testhashs64Fnv1) { fbBuilder.addInt64(18, testhashs64Fnv1); return fbBuilder.offset; } - int addTesthashu64Fnv1(int testhashu64Fnv1) { + int addTesthashu64Fnv1(int? testhashu64Fnv1) { fbBuilder.addUint64(19, testhashu64Fnv1); return fbBuilder.offset; } - int addTesthashs32Fnv1a(int testhashs32Fnv1a) { + int addTesthashs32Fnv1a(int? testhashs32Fnv1a) { fbBuilder.addInt32(20, testhashs32Fnv1a); return fbBuilder.offset; } - int addTesthashu32Fnv1a(int testhashu32Fnv1a) { + int addTesthashu32Fnv1a(int? testhashu32Fnv1a) { fbBuilder.addUint32(21, testhashu32Fnv1a); return fbBuilder.offset; } - int addTesthashs64Fnv1a(int testhashs64Fnv1a) { + int addTesthashs64Fnv1a(int? testhashs64Fnv1a) { fbBuilder.addInt64(22, testhashs64Fnv1a); return fbBuilder.offset; } - int addTesthashu64Fnv1a(int testhashu64Fnv1a) { + int addTesthashu64Fnv1a(int? testhashu64Fnv1a) { fbBuilder.addUint64(23, testhashu64Fnv1a); return fbBuilder.offset; } - int addTestarrayofboolsOffset(int offset) { + int addTestarrayofboolsOffset(int? offset) { fbBuilder.addOffset(24, offset); return fbBuilder.offset; } - int addTestf(double testf) { + int addTestf(double? testf) { fbBuilder.addFloat32(25, testf); return fbBuilder.offset; } - int addTestf2(double testf2) { + int addTestf2(double? testf2) { fbBuilder.addFloat32(26, testf2); return fbBuilder.offset; } - int addTestf3(double testf3) { + int addTestf3(double? testf3) { fbBuilder.addFloat32(27, testf3); return fbBuilder.offset; } - int addTestarrayofstring2Offset(int offset) { + int addTestarrayofstring2Offset(int? offset) { fbBuilder.addOffset(28, offset); return fbBuilder.offset; } - int addTestarrayofsortedstructOffset(int offset) { + int addTestarrayofsortedstructOffset(int? offset) { fbBuilder.addOffset(29, offset); return fbBuilder.offset; } - int addFlexOffset(int offset) { + int addFlexOffset(int? offset) { fbBuilder.addOffset(30, offset); return fbBuilder.offset; } - int addTest5Offset(int offset) { + int addTest5Offset(int? offset) { fbBuilder.addOffset(31, offset); return fbBuilder.offset; } - int addVectorOfLongsOffset(int offset) { + int addVectorOfLongsOffset(int? offset) { fbBuilder.addOffset(32, offset); return fbBuilder.offset; } - int addVectorOfDoublesOffset(int offset) { + int addVectorOfDoublesOffset(int? offset) { fbBuilder.addOffset(33, offset); return fbBuilder.offset; } - int addParentNamespaceTestOffset(int offset) { + int addParentNamespaceTestOffset(int? offset) { fbBuilder.addOffset(34, offset); return fbBuilder.offset; } - int addVectorOfReferrablesOffset(int offset) { + int addVectorOfReferrablesOffset(int? offset) { fbBuilder.addOffset(35, offset); return fbBuilder.offset; } - int addSingleWeakReference(int singleWeakReference) { + int addSingleWeakReference(int? singleWeakReference) { fbBuilder.addUint64(36, singleWeakReference); return fbBuilder.offset; } - int addVectorOfWeakReferencesOffset(int offset) { + int addVectorOfWeakReferencesOffset(int? offset) { fbBuilder.addOffset(37, offset); return fbBuilder.offset; } - int addVectorOfStrongReferrablesOffset(int offset) { + int addVectorOfStrongReferrablesOffset(int? offset) { fbBuilder.addOffset(38, offset); return fbBuilder.offset; } - int addCoOwningReference(int coOwningReference) { + int addCoOwningReference(int? coOwningReference) { fbBuilder.addUint64(39, coOwningReference); return fbBuilder.offset; } - int addVectorOfCoOwningReferencesOffset(int offset) { + int addVectorOfCoOwningReferencesOffset(int? offset) { fbBuilder.addOffset(40, offset); return fbBuilder.offset; } - int addNonOwningReference(int nonOwningReference) { + int addNonOwningReference(int? nonOwningReference) { fbBuilder.addUint64(41, nonOwningReference); return fbBuilder.offset; } - int addVectorOfNonOwningReferencesOffset(int offset) { + int addVectorOfNonOwningReferencesOffset(int? offset) { fbBuilder.addOffset(42, offset); return fbBuilder.offset; } - int addAnyUniqueType(AnyUniqueAliasesTypeId anyUniqueType) { + int addAnyUniqueType(AnyUniqueAliasesTypeId? anyUniqueType) { fbBuilder.addUint8(43, anyUniqueType?.value); return fbBuilder.offset; } - int addAnyUniqueOffset(int offset) { + int addAnyUniqueOffset(int? offset) { fbBuilder.addOffset(44, offset); return fbBuilder.offset; } - int addAnyAmbiguousType(AnyAmbiguousAliasesTypeId anyAmbiguousType) { + int addAnyAmbiguousType(AnyAmbiguousAliasesTypeId? anyAmbiguousType) { fbBuilder.addUint8(45, anyAmbiguousType?.value); return fbBuilder.offset; } - int addAnyAmbiguousOffset(int offset) { + int addAnyAmbiguousOffset(int? offset) { fbBuilder.addOffset(46, offset); return fbBuilder.offset; } - int addVectorOfEnumsOffset(int offset) { + int addVectorOfEnumsOffset(int? offset) { fbBuilder.addOffset(47, offset); return fbBuilder.offset; } - int addSignedEnum(Race signedEnum) { + int addSignedEnum(Race? signedEnum) { fbBuilder.addInt8(48, signedEnum?.value); return fbBuilder.offset; } - int addTestrequirednestedflatbufferOffset(int offset) { + int addTestrequirednestedflatbufferOffset(int? offset) { fbBuilder.addOffset(49, offset); return fbBuilder.offset; } - int addScalarKeySortedTablesOffset(int offset) { + int addScalarKeySortedTablesOffset(int? offset) { fbBuilder.addOffset(50, offset); return fbBuilder.offset; } @@ -1714,108 +1637,108 @@ class MonsterBuilder { } class MonsterObjectBuilder extends fb.ObjectBuilder { - final Vec3ObjectBuilder _pos; - final int _mana; - final int _hp; - final String _name; - final List _inventory; - final Color _color; - final AnyTypeId _testType; - final dynamic _test; - final List _test4; - final List _testarrayofstring; - final List _testarrayoftables; - final MonsterObjectBuilder _enemy; - final List _testnestedflatbuffer; - final StatObjectBuilder _testempty; - final bool _testbool; - final int _testhashs32Fnv1; - final int _testhashu32Fnv1; - final int _testhashs64Fnv1; - final int _testhashu64Fnv1; - final int _testhashs32Fnv1a; - final int _testhashu32Fnv1a; - final int _testhashs64Fnv1a; - final int _testhashu64Fnv1a; - final List _testarrayofbools; - final double _testf; - final double _testf2; - final double _testf3; - final List _testarrayofstring2; - final List _testarrayofsortedstruct; - final List _flex; - final List _test5; - final List _vectorOfLongs; - final List _vectorOfDoubles; - final my_game.InParentNamespaceObjectBuilder _parentNamespaceTest; - final List _vectorOfReferrables; - final int _singleWeakReference; - final List _vectorOfWeakReferences; - final List _vectorOfStrongReferrables; - final int _coOwningReference; - final List _vectorOfCoOwningReferences; - final int _nonOwningReference; - final List _vectorOfNonOwningReferences; - final AnyUniqueAliasesTypeId _anyUniqueType; - final dynamic _anyUnique; - final AnyAmbiguousAliasesTypeId _anyAmbiguousType; - final dynamic _anyAmbiguous; - final List _vectorOfEnums; - final Race _signedEnum; - final List _testrequirednestedflatbuffer; - final List _scalarKeySortedTables; + final Vec3ObjectBuilder? _pos; + final int? _mana; + final int? _hp; + final String? _name; + final List? _inventory; + final Color? _color; + final AnyTypeId? _testType; + final dynamic? _test; + final List? _test4; + final List? _testarrayofstring; + final List? _testarrayoftables; + final MonsterObjectBuilder? _enemy; + final List? _testnestedflatbuffer; + final StatObjectBuilder? _testempty; + final bool? _testbool; + final int? _testhashs32Fnv1; + final int? _testhashu32Fnv1; + final int? _testhashs64Fnv1; + final int? _testhashu64Fnv1; + final int? _testhashs32Fnv1a; + final int? _testhashu32Fnv1a; + final int? _testhashs64Fnv1a; + final int? _testhashu64Fnv1a; + final List? _testarrayofbools; + final double? _testf; + final double? _testf2; + final double? _testf3; + final List? _testarrayofstring2; + final List? _testarrayofsortedstruct; + final List? _flex; + final List? _test5; + final List? _vectorOfLongs; + final List? _vectorOfDoubles; + final my_game.InParentNamespaceObjectBuilder? _parentNamespaceTest; + final List? _vectorOfReferrables; + final int? _singleWeakReference; + final List? _vectorOfWeakReferences; + final List? _vectorOfStrongReferrables; + final int? _coOwningReference; + final List? _vectorOfCoOwningReferences; + final int? _nonOwningReference; + final List? _vectorOfNonOwningReferences; + final AnyUniqueAliasesTypeId? _anyUniqueType; + final dynamic? _anyUnique; + final AnyAmbiguousAliasesTypeId? _anyAmbiguousType; + final dynamic? _anyAmbiguous; + final List? _vectorOfEnums; + final Race? _signedEnum; + final List? _testrequirednestedflatbuffer; + final List? _scalarKeySortedTables; MonsterObjectBuilder({ - Vec3ObjectBuilder pos, - int mana, - int hp, - String name, - List inventory, - Color color, - AnyTypeId testType, - dynamic test, - List test4, - List testarrayofstring, - List testarrayoftables, - MonsterObjectBuilder enemy, - List testnestedflatbuffer, - StatObjectBuilder testempty, - bool testbool, - int testhashs32Fnv1, - int testhashu32Fnv1, - int testhashs64Fnv1, - int testhashu64Fnv1, - int testhashs32Fnv1a, - int testhashu32Fnv1a, - int testhashs64Fnv1a, - int testhashu64Fnv1a, - List testarrayofbools, - double testf, - double testf2, - double testf3, - List testarrayofstring2, - List testarrayofsortedstruct, - List flex, - List test5, - List vectorOfLongs, - List vectorOfDoubles, - my_game.InParentNamespaceObjectBuilder parentNamespaceTest, - List vectorOfReferrables, - int singleWeakReference, - List vectorOfWeakReferences, - List vectorOfStrongReferrables, - int coOwningReference, - List vectorOfCoOwningReferences, - int nonOwningReference, - List vectorOfNonOwningReferences, - AnyUniqueAliasesTypeId anyUniqueType, - dynamic anyUnique, - AnyAmbiguousAliasesTypeId anyAmbiguousType, - dynamic anyAmbiguous, - List vectorOfEnums, - Race signedEnum, - List testrequirednestedflatbuffer, - List scalarKeySortedTables, + Vec3ObjectBuilder? pos, + int? mana, + int? hp, + String? name, + List? inventory, + Color? color, + AnyTypeId? testType, + dynamic? test, + List? test4, + List? testarrayofstring, + List? testarrayoftables, + MonsterObjectBuilder? enemy, + List? testnestedflatbuffer, + StatObjectBuilder? testempty, + bool? testbool, + int? testhashs32Fnv1, + int? testhashu32Fnv1, + int? testhashs64Fnv1, + int? testhashu64Fnv1, + int? testhashs32Fnv1a, + int? testhashu32Fnv1a, + int? testhashs64Fnv1a, + int? testhashu64Fnv1a, + List? testarrayofbools, + double? testf, + double? testf2, + double? testf3, + List? testarrayofstring2, + List? testarrayofsortedstruct, + List? flex, + List? test5, + List? vectorOfLongs, + List? vectorOfDoubles, + my_game.InParentNamespaceObjectBuilder? parentNamespaceTest, + List? vectorOfReferrables, + int? singleWeakReference, + List? vectorOfWeakReferences, + List? vectorOfStrongReferrables, + int? coOwningReference, + List? vectorOfCoOwningReferences, + int? nonOwningReference, + List? vectorOfNonOwningReferences, + AnyUniqueAliasesTypeId? anyUniqueType, + dynamic? anyUnique, + AnyAmbiguousAliasesTypeId? anyAmbiguousType, + dynamic? anyAmbiguous, + List? vectorOfEnums, + Race? signedEnum, + List? testrequirednestedflatbuffer, + List? scalarKeySortedTables, }) : _pos = pos, _mana = mana, @@ -1870,112 +1793,91 @@ class MonsterObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int nameOffset = fbBuilder.writeString(_name); - final int inventoryOffset = _inventory?.isNotEmpty == true - ? fbBuilder.writeListUint8(_inventory) + int finish(fb.Builder fbBuilder) { + final int? nameOffset = fbBuilder.writeString(_name); + final int? inventoryOffset = _inventory?.isNotEmpty == true + ? fbBuilder.writeListUint8(_inventory!) : null; - final int testOffset = _test?.getOrCreateOffset(fbBuilder); - final int test4Offset = _test4?.isNotEmpty == true - ? fbBuilder.writeListOfStructs(_test4) + final int? testOffset = _test?.getOrCreateOffset(fbBuilder); + final int? test4Offset = _test4?.isNotEmpty == true + ? fbBuilder.writeListOfStructs(_test4!) : null; - final int testarrayofstringOffset = _testarrayofstring?.isNotEmpty == true - ? fbBuilder.writeList(_testarrayofstring.map((b) => fbBuilder.writeString(b)).toList()) + final int? testarrayofstringOffset = _testarrayofstring?.isNotEmpty == true + ? fbBuilder.writeList(_testarrayofstring!.map((b) => fbBuilder.writeString(b)!).toList()) : null; - final int testarrayoftablesOffset = _testarrayoftables?.isNotEmpty == true - ? fbBuilder.writeList(_testarrayoftables.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) + final int? testarrayoftablesOffset = _testarrayoftables?.isNotEmpty == true + ? fbBuilder.writeList(_testarrayoftables!.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) : null; - final int enemyOffset = _enemy?.getOrCreateOffset(fbBuilder); - final int testnestedflatbufferOffset = _testnestedflatbuffer?.isNotEmpty == true - ? fbBuilder.writeListUint8(_testnestedflatbuffer) + final int? enemyOffset = _enemy?.getOrCreateOffset(fbBuilder); + final int? testnestedflatbufferOffset = _testnestedflatbuffer?.isNotEmpty == true + ? fbBuilder.writeListUint8(_testnestedflatbuffer!) : null; - final int testemptyOffset = _testempty?.getOrCreateOffset(fbBuilder); - final int testarrayofboolsOffset = _testarrayofbools?.isNotEmpty == true - ? fbBuilder.writeListBool(_testarrayofbools) + final int? testemptyOffset = _testempty?.getOrCreateOffset(fbBuilder); + final int? testarrayofboolsOffset = _testarrayofbools?.isNotEmpty == true + ? fbBuilder.writeListBool(_testarrayofbools!) : null; - final int testarrayofstring2Offset = _testarrayofstring2?.isNotEmpty == true - ? fbBuilder.writeList(_testarrayofstring2.map((b) => fbBuilder.writeString(b)).toList()) + final int? testarrayofstring2Offset = _testarrayofstring2?.isNotEmpty == true + ? fbBuilder.writeList(_testarrayofstring2!.map((b) => fbBuilder.writeString(b)!).toList()) : null; - final int testarrayofsortedstructOffset = _testarrayofsortedstruct?.isNotEmpty == true - ? fbBuilder.writeListOfStructs(_testarrayofsortedstruct) + final int? testarrayofsortedstructOffset = _testarrayofsortedstruct?.isNotEmpty == true + ? fbBuilder.writeListOfStructs(_testarrayofsortedstruct!) : null; - final int flexOffset = _flex?.isNotEmpty == true - ? fbBuilder.writeListUint8(_flex) + final int? flexOffset = _flex?.isNotEmpty == true + ? fbBuilder.writeListUint8(_flex!) : null; - final int test5Offset = _test5?.isNotEmpty == true - ? fbBuilder.writeListOfStructs(_test5) + final int? test5Offset = _test5?.isNotEmpty == true + ? fbBuilder.writeListOfStructs(_test5!) : null; - final int vectorOfLongsOffset = _vectorOfLongs?.isNotEmpty == true - ? fbBuilder.writeListInt64(_vectorOfLongs) + final int? vectorOfLongsOffset = _vectorOfLongs?.isNotEmpty == true + ? fbBuilder.writeListInt64(_vectorOfLongs!) : null; - final int vectorOfDoublesOffset = _vectorOfDoubles?.isNotEmpty == true - ? fbBuilder.writeListFloat64(_vectorOfDoubles) + final int? vectorOfDoublesOffset = _vectorOfDoubles?.isNotEmpty == true + ? fbBuilder.writeListFloat64(_vectorOfDoubles!) : null; - final int parentNamespaceTestOffset = _parentNamespaceTest?.getOrCreateOffset(fbBuilder); - final int vectorOfReferrablesOffset = _vectorOfReferrables?.isNotEmpty == true - ? fbBuilder.writeList(_vectorOfReferrables.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) + final int? parentNamespaceTestOffset = _parentNamespaceTest?.getOrCreateOffset(fbBuilder); + final int? vectorOfReferrablesOffset = _vectorOfReferrables?.isNotEmpty == true + ? fbBuilder.writeList(_vectorOfReferrables!.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) : null; - final int vectorOfWeakReferencesOffset = _vectorOfWeakReferences?.isNotEmpty == true - ? fbBuilder.writeListUint64(_vectorOfWeakReferences) + final int? vectorOfWeakReferencesOffset = _vectorOfWeakReferences?.isNotEmpty == true + ? fbBuilder.writeListUint64(_vectorOfWeakReferences!) : null; - final int vectorOfStrongReferrablesOffset = _vectorOfStrongReferrables?.isNotEmpty == true - ? fbBuilder.writeList(_vectorOfStrongReferrables.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) + final int? vectorOfStrongReferrablesOffset = _vectorOfStrongReferrables?.isNotEmpty == true + ? fbBuilder.writeList(_vectorOfStrongReferrables!.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) : null; - final int vectorOfCoOwningReferencesOffset = _vectorOfCoOwningReferences?.isNotEmpty == true - ? fbBuilder.writeListUint64(_vectorOfCoOwningReferences) + final int? vectorOfCoOwningReferencesOffset = _vectorOfCoOwningReferences?.isNotEmpty == true + ? fbBuilder.writeListUint64(_vectorOfCoOwningReferences!) : null; - final int vectorOfNonOwningReferencesOffset = _vectorOfNonOwningReferences?.isNotEmpty == true - ? fbBuilder.writeListUint64(_vectorOfNonOwningReferences) + final int? vectorOfNonOwningReferencesOffset = _vectorOfNonOwningReferences?.isNotEmpty == true + ? fbBuilder.writeListUint64(_vectorOfNonOwningReferences!) : null; - final int anyUniqueOffset = _anyUnique?.getOrCreateOffset(fbBuilder); - final int anyAmbiguousOffset = _anyAmbiguous?.getOrCreateOffset(fbBuilder); - final int vectorOfEnumsOffset = _vectorOfEnums?.isNotEmpty == true - ? fbBuilder.writeListUint8(_vectorOfEnums.map((f) => f.value).toList()) + final int? anyUniqueOffset = _anyUnique?.getOrCreateOffset(fbBuilder); + final int? anyAmbiguousOffset = _anyAmbiguous?.getOrCreateOffset(fbBuilder); + final int? vectorOfEnumsOffset = _vectorOfEnums?.isNotEmpty == true + ? fbBuilder.writeListUint8(_vectorOfEnums!.map((f) => f.value).toList()) : null; - final int testrequirednestedflatbufferOffset = _testrequirednestedflatbuffer?.isNotEmpty == true - ? fbBuilder.writeListUint8(_testrequirednestedflatbuffer) + final int? testrequirednestedflatbufferOffset = _testrequirednestedflatbuffer?.isNotEmpty == true + ? fbBuilder.writeListUint8(_testrequirednestedflatbuffer!) : null; - final int scalarKeySortedTablesOffset = _scalarKeySortedTables?.isNotEmpty == true - ? fbBuilder.writeList(_scalarKeySortedTables.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) + final int? scalarKeySortedTablesOffset = _scalarKeySortedTables?.isNotEmpty == true + ? fbBuilder.writeList(_scalarKeySortedTables!.map((b) => b.getOrCreateOffset(fbBuilder)).toList()) : null; - fbBuilder.startTable(); if (_pos != null) { - fbBuilder.addStruct(0, _pos.finish(fbBuilder)); + fbBuilder.addStruct(0, _pos!.finish(fbBuilder)); } fbBuilder.addInt16(1, _mana); fbBuilder.addInt16(2, _hp); - if (nameOffset != null) { - fbBuilder.addOffset(3, nameOffset); - } - if (inventoryOffset != null) { - fbBuilder.addOffset(5, inventoryOffset); - } + fbBuilder.addOffset(3, nameOffset); + fbBuilder.addOffset(5, inventoryOffset); fbBuilder.addUint8(6, _color?.value); fbBuilder.addUint8(7, _testType?.value); - if (testOffset != null) { - fbBuilder.addOffset(8, testOffset); - } - if (test4Offset != null) { - fbBuilder.addOffset(9, test4Offset); - } - if (testarrayofstringOffset != null) { - fbBuilder.addOffset(10, testarrayofstringOffset); - } - if (testarrayoftablesOffset != null) { - fbBuilder.addOffset(11, testarrayoftablesOffset); - } - if (enemyOffset != null) { - fbBuilder.addOffset(12, enemyOffset); - } - if (testnestedflatbufferOffset != null) { - fbBuilder.addOffset(13, testnestedflatbufferOffset); - } - if (testemptyOffset != null) { - fbBuilder.addOffset(14, testemptyOffset); - } + fbBuilder.addOffset(8, testOffset); + fbBuilder.addOffset(9, test4Offset); + fbBuilder.addOffset(10, testarrayofstringOffset); + fbBuilder.addOffset(11, testarrayoftablesOffset); + fbBuilder.addOffset(12, enemyOffset); + fbBuilder.addOffset(13, testnestedflatbufferOffset); + fbBuilder.addOffset(14, testemptyOffset); fbBuilder.addBool(15, _testbool); fbBuilder.addInt32(16, _testhashs32Fnv1); fbBuilder.addUint32(17, _testhashu32Fnv1); @@ -1985,75 +1887,39 @@ class MonsterObjectBuilder extends fb.ObjectBuilder { fbBuilder.addUint32(21, _testhashu32Fnv1a); fbBuilder.addInt64(22, _testhashs64Fnv1a); fbBuilder.addUint64(23, _testhashu64Fnv1a); - if (testarrayofboolsOffset != null) { - fbBuilder.addOffset(24, testarrayofboolsOffset); - } + fbBuilder.addOffset(24, testarrayofboolsOffset); fbBuilder.addFloat32(25, _testf); fbBuilder.addFloat32(26, _testf2); fbBuilder.addFloat32(27, _testf3); - if (testarrayofstring2Offset != null) { - fbBuilder.addOffset(28, testarrayofstring2Offset); - } - if (testarrayofsortedstructOffset != null) { - fbBuilder.addOffset(29, testarrayofsortedstructOffset); - } - if (flexOffset != null) { - fbBuilder.addOffset(30, flexOffset); - } - if (test5Offset != null) { - fbBuilder.addOffset(31, test5Offset); - } - if (vectorOfLongsOffset != null) { - fbBuilder.addOffset(32, vectorOfLongsOffset); - } - if (vectorOfDoublesOffset != null) { - fbBuilder.addOffset(33, vectorOfDoublesOffset); - } - if (parentNamespaceTestOffset != null) { - fbBuilder.addOffset(34, parentNamespaceTestOffset); - } - if (vectorOfReferrablesOffset != null) { - fbBuilder.addOffset(35, vectorOfReferrablesOffset); - } + fbBuilder.addOffset(28, testarrayofstring2Offset); + fbBuilder.addOffset(29, testarrayofsortedstructOffset); + fbBuilder.addOffset(30, flexOffset); + fbBuilder.addOffset(31, test5Offset); + fbBuilder.addOffset(32, vectorOfLongsOffset); + fbBuilder.addOffset(33, vectorOfDoublesOffset); + fbBuilder.addOffset(34, parentNamespaceTestOffset); + fbBuilder.addOffset(35, vectorOfReferrablesOffset); fbBuilder.addUint64(36, _singleWeakReference); - if (vectorOfWeakReferencesOffset != null) { - fbBuilder.addOffset(37, vectorOfWeakReferencesOffset); - } - if (vectorOfStrongReferrablesOffset != null) { - fbBuilder.addOffset(38, vectorOfStrongReferrablesOffset); - } + fbBuilder.addOffset(37, vectorOfWeakReferencesOffset); + fbBuilder.addOffset(38, vectorOfStrongReferrablesOffset); fbBuilder.addUint64(39, _coOwningReference); - if (vectorOfCoOwningReferencesOffset != null) { - fbBuilder.addOffset(40, vectorOfCoOwningReferencesOffset); - } + fbBuilder.addOffset(40, vectorOfCoOwningReferencesOffset); fbBuilder.addUint64(41, _nonOwningReference); - if (vectorOfNonOwningReferencesOffset != null) { - fbBuilder.addOffset(42, vectorOfNonOwningReferencesOffset); - } + fbBuilder.addOffset(42, vectorOfNonOwningReferencesOffset); fbBuilder.addUint8(43, _anyUniqueType?.value); - if (anyUniqueOffset != null) { - fbBuilder.addOffset(44, anyUniqueOffset); - } + fbBuilder.addOffset(44, anyUniqueOffset); fbBuilder.addUint8(45, _anyAmbiguousType?.value); - if (anyAmbiguousOffset != null) { - fbBuilder.addOffset(46, anyAmbiguousOffset); - } - if (vectorOfEnumsOffset != null) { - fbBuilder.addOffset(47, vectorOfEnumsOffset); - } + fbBuilder.addOffset(46, anyAmbiguousOffset); + fbBuilder.addOffset(47, vectorOfEnumsOffset); fbBuilder.addInt8(48, _signedEnum?.value); - if (testrequirednestedflatbufferOffset != null) { - fbBuilder.addOffset(49, testrequirednestedflatbufferOffset); - } - if (scalarKeySortedTablesOffset != null) { - fbBuilder.addOffset(50, scalarKeySortedTablesOffset); - } + fbBuilder.addOffset(49, testrequirednestedflatbufferOffset); + fbBuilder.addOffset(50, scalarKeySortedTablesOffset); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -2081,8 +1947,8 @@ class TypeAliases { int get u64 => const fb.Uint64Reader().vTableGet(_bc, _bcOffset, 18, 0); double get f32 => const fb.Float32Reader().vTableGet(_bc, _bcOffset, 20, 0.0); double get f64 => const fb.Float64Reader().vTableGet(_bc, _bcOffset, 22, 0.0); - List get v8 => const fb.ListReader(const fb.Int8Reader()).vTableGet(_bc, _bcOffset, 24, null); - List get vf64 => const fb.ListReader(const fb.Float64Reader()).vTableGet(_bc, _bcOffset, 26, null); + List? get v8 => const fb.ListReader(const fb.Int8Reader()).vTableGetNullable(_bc, _bcOffset, 24); + List? get vf64 => const fb.ListReader(const fb.Float64Reader()).vTableGetNullable(_bc, _bcOffset, 26); @override String toString() { @@ -2103,7 +1969,7 @@ class TypeAliases { v8: v8, vf64: vf64); - static int pack(fb.Builder fbBuilder, TypeAliasesT object) { + static int pack(fb.Builder fbBuilder, TypeAliasesT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -2120,32 +1986,30 @@ class TypeAliasesT { int u64; double f32; double f64; - List v8; - List vf64; + List? v8; + List? vf64; TypeAliasesT({ - this.i8, - this.u8, - this.i16, - this.u16, - this.i32, - this.u32, - this.i64, - this.u64, - this.f32, - this.f64, + this.i8 = 0, + this.u8 = 0, + this.i16 = 0, + this.u16 = 0, + this.i32 = 0, + this.u32 = 0, + this.i64 = 0, + this.u64 = 0, + this.f32 = 0.0, + this.f64 = 0.0, this.v8, this.vf64}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int v8Offset = v8?.isNotEmpty == true - ? fbBuilder.writeListInt8(v8) + final int? v8Offset = v8?.isNotEmpty == true + ? fbBuilder.writeListInt8(v8!) : null; - final int vf64Offset = vf64?.isNotEmpty == true - ? fbBuilder.writeListFloat64(vf64) + final int? vf64Offset = vf64?.isNotEmpty == true + ? fbBuilder.writeListFloat64(vf64!) : null; - fbBuilder.startTable(); fbBuilder.addInt8(0, i8); fbBuilder.addUint8(1, u8); @@ -2157,12 +2021,8 @@ class TypeAliasesT { fbBuilder.addUint64(7, u64); fbBuilder.addFloat32(8, f32); fbBuilder.addFloat64(9, f64); - if (v8Offset != null) { - fbBuilder.addOffset(10, v8Offset); - } - if (vf64Offset != null) { - fbBuilder.addOffset(11, vf64Offset); - } + fbBuilder.addOffset(10, v8Offset); + fbBuilder.addOffset(11, vf64Offset); return fbBuilder.endTable(); } @@ -2181,9 +2041,7 @@ class _TypeAliasesReader extends fb.TableReader { } class TypeAliasesBuilder { - TypeAliasesBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + TypeAliasesBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -2191,51 +2049,51 @@ class TypeAliasesBuilder { fbBuilder.startTable(); } - int addI8(int i8) { + int addI8(int? i8) { fbBuilder.addInt8(0, i8); return fbBuilder.offset; } - int addU8(int u8) { + int addU8(int? u8) { fbBuilder.addUint8(1, u8); return fbBuilder.offset; } - int addI16(int i16) { + int addI16(int? i16) { fbBuilder.addInt16(2, i16); return fbBuilder.offset; } - int addU16(int u16) { + int addU16(int? u16) { fbBuilder.addUint16(3, u16); return fbBuilder.offset; } - int addI32(int i32) { + int addI32(int? i32) { fbBuilder.addInt32(4, i32); return fbBuilder.offset; } - int addU32(int u32) { + int addU32(int? u32) { fbBuilder.addUint32(5, u32); return fbBuilder.offset; } - int addI64(int i64) { + int addI64(int? i64) { fbBuilder.addInt64(6, i64); return fbBuilder.offset; } - int addU64(int u64) { + int addU64(int? u64) { fbBuilder.addUint64(7, u64); return fbBuilder.offset; } - int addF32(double f32) { + int addF32(double? f32) { fbBuilder.addFloat32(8, f32); return fbBuilder.offset; } - int addF64(double f64) { + int addF64(double? f64) { fbBuilder.addFloat64(9, f64); return fbBuilder.offset; } - int addV8Offset(int offset) { + int addV8Offset(int? offset) { fbBuilder.addOffset(10, offset); return fbBuilder.offset; } - int addVf64Offset(int offset) { + int addVf64Offset(int? offset) { fbBuilder.addOffset(11, offset); return fbBuilder.offset; } @@ -2246,32 +2104,32 @@ class TypeAliasesBuilder { } class TypeAliasesObjectBuilder extends fb.ObjectBuilder { - final int _i8; - final int _u8; - final int _i16; - final int _u16; - final int _i32; - final int _u32; - final int _i64; - final int _u64; - final double _f32; - final double _f64; - final List _v8; - final List _vf64; + final int? _i8; + final int? _u8; + final int? _i16; + final int? _u16; + final int? _i32; + final int? _u32; + final int? _i64; + final int? _u64; + final double? _f32; + final double? _f64; + final List? _v8; + final List? _vf64; TypeAliasesObjectBuilder({ - int i8, - int u8, - int i16, - int u16, - int i32, - int u32, - int i64, - int u64, - double f32, - double f64, - List v8, - List vf64, + int? i8, + int? u8, + int? i16, + int? u16, + int? i32, + int? u32, + int? i64, + int? u64, + double? f32, + double? f64, + List? v8, + List? vf64, }) : _i8 = i8, _u8 = u8, @@ -2288,16 +2146,13 @@ class TypeAliasesObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int v8Offset = _v8?.isNotEmpty == true - ? fbBuilder.writeListInt8(_v8) + int finish(fb.Builder fbBuilder) { + final int? v8Offset = _v8?.isNotEmpty == true + ? fbBuilder.writeListInt8(_v8!) : null; - final int vf64Offset = _vf64?.isNotEmpty == true - ? fbBuilder.writeListFloat64(_vf64) + final int? vf64Offset = _vf64?.isNotEmpty == true + ? fbBuilder.writeListFloat64(_vf64!) : null; - fbBuilder.startTable(); fbBuilder.addInt8(0, _i8); fbBuilder.addUint8(1, _u8); @@ -2309,18 +2164,14 @@ class TypeAliasesObjectBuilder extends fb.ObjectBuilder { fbBuilder.addUint64(7, _u64); fbBuilder.addFloat32(8, _f32); fbBuilder.addFloat64(9, _f64); - if (v8Offset != null) { - fbBuilder.addOffset(10, v8Offset); - } - if (vf64Offset != null) { - fbBuilder.addOffset(11, vf64Offset); - } + fbBuilder.addOffset(10, v8Offset); + fbBuilder.addOffset(11, vf64Offset); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/tests/monster_test_my_game_generated.dart b/tests/monster_test_my_game_generated.dart index d53550d131e..146c401788a 100644 --- a/tests/monster_test_my_game_generated.dart +++ b/tests/monster_test_my_game_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library my_game; @@ -29,7 +29,7 @@ class InParentNamespace { InParentNamespaceT unpack() => InParentNamespaceT(); - static int pack(fb.Builder fbBuilder, InParentNamespaceT object) { + static int pack(fb.Builder fbBuilder, InParentNamespaceT? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -37,8 +37,6 @@ class InParentNamespace { class InParentNamespaceT { int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.startTable(); return fbBuilder.endTable(); } @@ -63,17 +61,14 @@ class InParentNamespaceObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.startTable(); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/tests/namespace_test/namespace_test1_namespace_a.namespace_b_generated.dart b/tests/namespace_test/namespace_test1_namespace_a.namespace_b_generated.dart index c36d1e00026..7f9cc3bb119 100644 --- a/tests/namespace_test/namespace_test1_namespace_a.namespace_b_generated.dart +++ b/tests/namespace_test/namespace_test1_namespace_a.namespace_b_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library namespace_a.namespace_b; @@ -12,20 +12,25 @@ class UnionInNestedNSTypeId { const UnionInNestedNSTypeId._(this.value); factory UnionInNestedNSTypeId.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum UnionInNestedNSTypeId'); } - return values[value]; + return result; } + static UnionInNestedNSTypeId? _createOrNull(int? value) => + value == null ? null : UnionInNestedNSTypeId.fromValue(value); + static const int minValue = 0; static const int maxValue = 1; static bool containsValue(int value) => values.containsKey(value); static const UnionInNestedNSTypeId NONE = const UnionInNestedNSTypeId._(0); static const UnionInNestedNSTypeId TableInNestedNS = const UnionInNestedNSTypeId._(1); - static const Map values = {0: NONE,1: TableInNestedNS,}; + static const Map values = { + 0: NONE, + 1: TableInNestedNS}; static const fb.Reader reader = const _UnionInNestedNSTypeIdReader(); @@ -51,13 +56,16 @@ class EnumInNestedNS { const EnumInNestedNS._(this.value); factory EnumInNestedNS.fromValue(int value) { - if (value == null) value = 0; - if (!values.containsKey(value)) { + final result = values[value]; + if (result == null) { throw new StateError('Invalid value $value for bit flag enum EnumInNestedNS'); } - return values[value]; + return result; } + static EnumInNestedNS? _createOrNull(int? value) => + value == null ? null : EnumInNestedNS.fromValue(value); + static const int minValue = 0; static const int maxValue = 2; static bool containsValue(int value) => values.containsKey(value); @@ -65,7 +73,10 @@ class EnumInNestedNS { static const EnumInNestedNS A = const EnumInNestedNS._(0); static const EnumInNestedNS B = const EnumInNestedNS._(1); static const EnumInNestedNS C = const EnumInNestedNS._(2); - static const Map values = {0: A,1: B,2: C,}; + static const Map values = { + 0: A, + 1: B, + 2: C}; static const fb.Reader reader = const _EnumInNestedNSReader(); @@ -108,7 +119,7 @@ class TableInNestedNS { TableInNestedNST unpack() => TableInNestedNST( foo: foo); - static int pack(fb.Builder fbBuilder, TableInNestedNST object) { + static int pack(fb.Builder fbBuilder, TableInNestedNST? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -118,11 +129,9 @@ class TableInNestedNST { int foo; TableInNestedNST({ - this.foo}); + this.foo = 0}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.startTable(); fbBuilder.addInt32(0, foo); return fbBuilder.endTable(); @@ -143,9 +152,7 @@ class _TableInNestedNSReader extends fb.TableReader { } class TableInNestedNSBuilder { - TableInNestedNSBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + TableInNestedNSBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -153,7 +160,7 @@ class TableInNestedNSBuilder { fbBuilder.startTable(); } - int addFoo(int foo) { + int addFoo(int? foo) { fbBuilder.addInt32(0, foo); return fbBuilder.offset; } @@ -164,19 +171,16 @@ class TableInNestedNSBuilder { } class TableInNestedNSObjectBuilder extends fb.ObjectBuilder { - final int _foo; + final int? _foo; TableInNestedNSObjectBuilder({ - int foo, + int? foo, }) : _foo = foo; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.startTable(); fbBuilder.addInt32(0, _foo); return fbBuilder.endTable(); @@ -184,7 +188,7 @@ class TableInNestedNSObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -210,7 +214,7 @@ class StructInNestedNS { a: a, b: b); - static int pack(fb.Builder fbBuilder, StructInNestedNST object) { + static int pack(fb.Builder fbBuilder, StructInNestedNST? object) { if (object == null) return 0; return object.pack(fbBuilder); } @@ -221,12 +225,10 @@ class StructInNestedNST { int b; StructInNestedNST({ - this.a, - this.b}); + required this.a, + required this.b}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - fbBuilder.putInt32(b); fbBuilder.putInt32(a); return fbBuilder.offset; @@ -250,9 +252,7 @@ class _StructInNestedNSReader extends fb.StructReader { } class StructInNestedNSBuilder { - StructInNestedNSBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + StructInNestedNSBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -269,18 +269,15 @@ class StructInNestedNSObjectBuilder extends fb.ObjectBuilder { final int _b; StructInNestedNSObjectBuilder({ - int a, - int b, + required int a, + required int b, }) : _a = a, _b = b; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - + int finish(fb.Builder fbBuilder) { fbBuilder.putInt32(_b); fbBuilder.putInt32(_a); return fbBuilder.offset; @@ -288,7 +285,7 @@ class StructInNestedNSObjectBuilder extends fb.ObjectBuilder { /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/tests/namespace_test/namespace_test2_namespace_a_generated.dart b/tests/namespace_test/namespace_test2_namespace_a_generated.dart index 79a82a2c7de..87c16195088 100644 --- a/tests/namespace_test/namespace_test2_namespace_a_generated.dart +++ b/tests/namespace_test/namespace_test2_namespace_a_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library namespace_a; @@ -20,16 +20,16 @@ class TableInFirstNS { final fb.BufferContext _bc; final int _bcOffset; - namespace_a_namespace_b.TableInNestedNS get fooTable => namespace_a_namespace_b.TableInNestedNS.reader.vTableGet(_bc, _bcOffset, 4, null); - EnumInNestedNS get fooEnum => new EnumInNestedNS.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 6, 0)); - UnionInNestedNSTypeId get fooUnionType => new UnionInNestedNSTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 8, 0)); - dynamic get fooUnion { + namespace_a_namespace_b.TableInNestedNS? get fooTable => namespace_a_namespace_b.TableInNestedNS.reader.vTableGetNullable(_bc, _bcOffset, 4); + EnumInNestedNS get fooEnum => EnumInNestedNS.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 6, 0)); + UnionInNestedNSTypeId? get fooUnionType => UnionInNestedNSTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 8)); + dynamic? get fooUnion { switch (fooUnionType?.value) { - case 1: return TableInNestedNS.reader.vTableGet(_bc, _bcOffset, 10, null); + case 1: return TableInNestedNS.reader.vTableGetNullable(_bc, _bcOffset, 10); default: return null; } } - namespace_a_namespace_b.StructInNestedNS get fooStruct => namespace_a_namespace_b.StructInNestedNS.reader.vTableGet(_bc, _bcOffset, 12, null); + namespace_a_namespace_b.StructInNestedNS? get fooStruct => namespace_a_namespace_b.StructInNestedNS.reader.vTableGetNullable(_bc, _bcOffset, 12); @override String toString() { @@ -43,42 +43,36 @@ class TableInFirstNS { fooUnion: fooUnion, fooStruct: fooStruct?.unpack()); - static int pack(fb.Builder fbBuilder, TableInFirstNST object) { + static int pack(fb.Builder fbBuilder, TableInFirstNST? object) { if (object == null) return 0; return object.pack(fbBuilder); } } class TableInFirstNST { - namespace_a_namespace_b.TableInNestedNST fooTable; + namespace_a_namespace_b.TableInNestedNST? fooTable; EnumInNestedNS fooEnum; - UnionInNestedNSTypeId fooUnionType; - dynamic fooUnion; - namespace_a_namespace_b.StructInNestedNST fooStruct; + UnionInNestedNSTypeId? fooUnionType; + dynamic? fooUnion; + namespace_a_namespace_b.StructInNestedNST? fooStruct; TableInFirstNST({ this.fooTable, - this.fooEnum, + this.fooEnum = EnumInNestedNS.A, this.fooUnionType, this.fooUnion, this.fooStruct}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int fooTableOffset = fooTable?.pack(fbBuilder); - final int fooUnionOffset = fooUnion?.pack(fbBuilder); - + final int? fooTableOffset = fooTable?.pack(fbBuilder); + final int? fooUnionOffset = fooUnion?.pack(fbBuilder); fbBuilder.startTable(); - if (fooTableOffset != null) { - fbBuilder.addOffset(0, fooTableOffset); - } - fbBuilder.addInt8(1, fooEnum?.value); + fbBuilder.addOffset(0, fooTableOffset); + fbBuilder.addInt8(1, fooEnum.value); fbBuilder.addUint8(2, fooUnionType?.value); - if (fooUnionOffset != null) { - fbBuilder.addOffset(3, fooUnionOffset); - } + fbBuilder.addOffset(3, fooUnionOffset); if (fooStruct != null) { - fbBuilder.addStruct(4, fooStruct.pack(fbBuilder)); + fbBuilder.addStruct(4, fooStruct!.pack(fbBuilder)); } return fbBuilder.endTable(); } @@ -98,9 +92,7 @@ class _TableInFirstNSReader extends fb.TableReader { } class TableInFirstNSBuilder { - TableInFirstNSBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + TableInFirstNSBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -108,19 +100,19 @@ class TableInFirstNSBuilder { fbBuilder.startTable(); } - int addFooTableOffset(int offset) { + int addFooTableOffset(int? offset) { fbBuilder.addOffset(0, offset); return fbBuilder.offset; } - int addFooEnum(EnumInNestedNS fooEnum) { + int addFooEnum(EnumInNestedNS? fooEnum) { fbBuilder.addInt8(1, fooEnum?.value); return fbBuilder.offset; } - int addFooUnionType(UnionInNestedNSTypeId fooUnionType) { + int addFooUnionType(UnionInNestedNSTypeId? fooUnionType) { fbBuilder.addUint8(2, fooUnionType?.value); return fbBuilder.offset; } - int addFooUnionOffset(int offset) { + int addFooUnionOffset(int? offset) { fbBuilder.addOffset(3, offset); return fbBuilder.offset; } @@ -135,18 +127,18 @@ class TableInFirstNSBuilder { } class TableInFirstNSObjectBuilder extends fb.ObjectBuilder { - final namespace_a_namespace_b.TableInNestedNSObjectBuilder _fooTable; - final EnumInNestedNS _fooEnum; - final UnionInNestedNSTypeId _fooUnionType; - final dynamic _fooUnion; - final namespace_a_namespace_b.StructInNestedNSObjectBuilder _fooStruct; + final namespace_a_namespace_b.TableInNestedNSObjectBuilder? _fooTable; + final EnumInNestedNS? _fooEnum; + final UnionInNestedNSTypeId? _fooUnionType; + final dynamic? _fooUnion; + final namespace_a_namespace_b.StructInNestedNSObjectBuilder? _fooStruct; TableInFirstNSObjectBuilder({ - namespace_a_namespace_b.TableInNestedNSObjectBuilder fooTable, - EnumInNestedNS fooEnum, - UnionInNestedNSTypeId fooUnionType, - dynamic fooUnion, - namespace_a_namespace_b.StructInNestedNSObjectBuilder fooStruct, + namespace_a_namespace_b.TableInNestedNSObjectBuilder? fooTable, + EnumInNestedNS? fooEnum, + UnionInNestedNSTypeId? fooUnionType, + dynamic? fooUnion, + namespace_a_namespace_b.StructInNestedNSObjectBuilder? fooStruct, }) : _fooTable = fooTable, _fooEnum = fooEnum, @@ -156,30 +148,23 @@ class TableInFirstNSObjectBuilder extends fb.ObjectBuilder { /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int fooTableOffset = _fooTable?.getOrCreateOffset(fbBuilder); - final int fooUnionOffset = _fooUnion?.getOrCreateOffset(fbBuilder); - + int finish(fb.Builder fbBuilder) { + final int? fooTableOffset = _fooTable?.getOrCreateOffset(fbBuilder); + final int? fooUnionOffset = _fooUnion?.getOrCreateOffset(fbBuilder); fbBuilder.startTable(); - if (fooTableOffset != null) { - fbBuilder.addOffset(0, fooTableOffset); - } + fbBuilder.addOffset(0, fooTableOffset); fbBuilder.addInt8(1, _fooEnum?.value); fbBuilder.addUint8(2, _fooUnionType?.value); - if (fooUnionOffset != null) { - fbBuilder.addOffset(3, fooUnionOffset); - } + fbBuilder.addOffset(3, fooUnionOffset); if (_fooStruct != null) { - fbBuilder.addStruct(4, _fooStruct.finish(fbBuilder)); + fbBuilder.addStruct(4, _fooStruct!.finish(fbBuilder)); } return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); @@ -197,7 +182,7 @@ class SecondTableInA { final fb.BufferContext _bc; final int _bcOffset; - namespace_c.TableInC get referToC => namespace_c.TableInC.reader.vTableGet(_bc, _bcOffset, 4, null); + namespace_c.TableInC? get referToC => namespace_c.TableInC.reader.vTableGetNullable(_bc, _bcOffset, 4); @override String toString() { @@ -207,26 +192,22 @@ class SecondTableInA { SecondTableInAT unpack() => SecondTableInAT( referToC: referToC?.unpack()); - static int pack(fb.Builder fbBuilder, SecondTableInAT object) { + static int pack(fb.Builder fbBuilder, SecondTableInAT? object) { if (object == null) return 0; return object.pack(fbBuilder); } } class SecondTableInAT { - namespace_c.TableInCT referToC; + namespace_c.TableInCT? referToC; SecondTableInAT({ this.referToC}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int referToCOffset = referToC?.pack(fbBuilder); - + final int? referToCOffset = referToC?.pack(fbBuilder); fbBuilder.startTable(); - if (referToCOffset != null) { - fbBuilder.addOffset(0, referToCOffset); - } + fbBuilder.addOffset(0, referToCOffset); return fbBuilder.endTable(); } @@ -245,9 +226,7 @@ class _SecondTableInAReader extends fb.TableReader { } class SecondTableInABuilder { - SecondTableInABuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + SecondTableInABuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -255,7 +234,7 @@ class SecondTableInABuilder { fbBuilder.startTable(); } - int addReferToCOffset(int offset) { + int addReferToCOffset(int? offset) { fbBuilder.addOffset(0, offset); return fbBuilder.offset; } @@ -266,30 +245,25 @@ class SecondTableInABuilder { } class SecondTableInAObjectBuilder extends fb.ObjectBuilder { - final namespace_c.TableInCObjectBuilder _referToC; + final namespace_c.TableInCObjectBuilder? _referToC; SecondTableInAObjectBuilder({ - namespace_c.TableInCObjectBuilder referToC, + namespace_c.TableInCObjectBuilder? referToC, }) : _referToC = referToC; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int referToCOffset = _referToC?.getOrCreateOffset(fbBuilder); - + int finish(fb.Builder fbBuilder) { + final int? referToCOffset = _referToC?.getOrCreateOffset(fbBuilder); fbBuilder.startTable(); - if (referToCOffset != null) { - fbBuilder.addOffset(0, referToCOffset); - } + fbBuilder.addOffset(0, referToCOffset); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier); diff --git a/tests/namespace_test/namespace_test2_namespace_c_generated.dart b/tests/namespace_test/namespace_test2_namespace_c_generated.dart index 41f474c3872..a82f2c4ab2e 100644 --- a/tests/namespace_test/namespace_test2_namespace_c_generated.dart +++ b/tests/namespace_test/namespace_test2_namespace_c_generated.dart @@ -1,5 +1,5 @@ // automatically generated by the FlatBuffers compiler, do not modify -// ignore_for_file: unused_import, unused_field, unused_local_variable +// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable library namespace_c; @@ -20,8 +20,8 @@ class TableInC { final fb.BufferContext _bc; final int _bcOffset; - namespace_a.TableInFirstNS get referToA1 => namespace_a.TableInFirstNS.reader.vTableGet(_bc, _bcOffset, 4, null); - namespace_a.SecondTableInA get referToA2 => namespace_a.SecondTableInA.reader.vTableGet(_bc, _bcOffset, 6, null); + namespace_a.TableInFirstNS? get referToA1 => namespace_a.TableInFirstNS.reader.vTableGetNullable(_bc, _bcOffset, 4); + namespace_a.SecondTableInA? get referToA2 => namespace_a.SecondTableInA.reader.vTableGetNullable(_bc, _bcOffset, 6); @override String toString() { @@ -32,32 +32,26 @@ class TableInC { referToA1: referToA1?.unpack(), referToA2: referToA2?.unpack()); - static int pack(fb.Builder fbBuilder, TableInCT object) { + static int pack(fb.Builder fbBuilder, TableInCT? object) { if (object == null) return 0; return object.pack(fbBuilder); } } class TableInCT { - namespace_a.TableInFirstNST referToA1; - namespace_a.SecondTableInAT referToA2; + namespace_a.TableInFirstNST? referToA1; + namespace_a.SecondTableInAT? referToA2; TableInCT({ this.referToA1, this.referToA2}); int pack(fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int referToA1Offset = referToA1?.pack(fbBuilder); - final int referToA2Offset = referToA2?.pack(fbBuilder); - + final int? referToA1Offset = referToA1?.pack(fbBuilder); + final int? referToA2Offset = referToA2?.pack(fbBuilder); fbBuilder.startTable(); - if (referToA1Offset != null) { - fbBuilder.addOffset(0, referToA1Offset); - } - if (referToA2Offset != null) { - fbBuilder.addOffset(1, referToA2Offset); - } + fbBuilder.addOffset(0, referToA1Offset); + fbBuilder.addOffset(1, referToA2Offset); return fbBuilder.endTable(); } @@ -76,9 +70,7 @@ class _TableInCReader extends fb.TableReader { } class TableInCBuilder { - TableInCBuilder(this.fbBuilder) { - assert(fbBuilder != null); - } + TableInCBuilder(this.fbBuilder) {} final fb.Builder fbBuilder; @@ -86,11 +78,11 @@ class TableInCBuilder { fbBuilder.startTable(); } - int addReferToA1Offset(int offset) { + int addReferToA1Offset(int? offset) { fbBuilder.addOffset(0, offset); return fbBuilder.offset; } - int addReferToA2Offset(int offset) { + int addReferToA2Offset(int? offset) { fbBuilder.addOffset(1, offset); return fbBuilder.offset; } @@ -101,37 +93,30 @@ class TableInCBuilder { } class TableInCObjectBuilder extends fb.ObjectBuilder { - final namespace_a.TableInFirstNSObjectBuilder _referToA1; - final namespace_a.SecondTableInAObjectBuilder _referToA2; + final namespace_a.TableInFirstNSObjectBuilder? _referToA1; + final namespace_a.SecondTableInAObjectBuilder? _referToA2; TableInCObjectBuilder({ - namespace_a.TableInFirstNSObjectBuilder referToA1, - namespace_a.SecondTableInAObjectBuilder referToA2, + namespace_a.TableInFirstNSObjectBuilder? referToA1, + namespace_a.SecondTableInAObjectBuilder? referToA2, }) : _referToA1 = referToA1, _referToA2 = referToA2; /// Finish building, and store into the [fbBuilder]. @override - int finish( - fb.Builder fbBuilder) { - assert(fbBuilder != null); - final int referToA1Offset = _referToA1?.getOrCreateOffset(fbBuilder); - final int referToA2Offset = _referToA2?.getOrCreateOffset(fbBuilder); - + int finish(fb.Builder fbBuilder) { + final int? referToA1Offset = _referToA1?.getOrCreateOffset(fbBuilder); + final int? referToA2Offset = _referToA2?.getOrCreateOffset(fbBuilder); fbBuilder.startTable(); - if (referToA1Offset != null) { - fbBuilder.addOffset(0, referToA1Offset); - } - if (referToA2Offset != null) { - fbBuilder.addOffset(1, referToA2Offset); - } + fbBuilder.addOffset(0, referToA1Offset); + fbBuilder.addOffset(1, referToA2Offset); return fbBuilder.endTable(); } /// Convenience method to serialize to byte list. @override - Uint8List toBytes([String fileIdentifier]) { + Uint8List toBytes([String? fileIdentifier]) { fb.Builder fbBuilder = new fb.Builder(); int offset = finish(fbBuilder); return fbBuilder.finish(offset, fileIdentifier);