Dart null safety (#6696)

* Dart null-safety - prepare migration annotations in library files

* Dart null-safety - apply migration

* Dart null-safety - update flatc to generate valid code

* Dart null-safety - fix flatc generated code and adjust tests

* Dart null-safety - update example and the generated code in the tests folder

* Dart null safety - minor review changes

* Dart - apply `dartfmt -w .`
This commit is contained in:
Ivan Dlugos
2021-06-22 17:54:57 +02:00
committed by GitHub
parent 71d43f3be9
commit a6ee335574
23 changed files with 3352 additions and 2649 deletions

View File

@@ -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<double> get dvec => const fb.ListReader<double>(const fb.Float64Reader()).vTableGet(_bc, _bcOffset, 20, null);
List<double> get fvec => const fb.ListReader<double>(const fb.Float32Reader()).vTableGet(_bc, _bcOffset, 22, null);
List<double>? get dvec => const fb.ListReader<double>(const fb.Float64Reader()).vTableGetNullable(_bc, _bcOffset, 20);
List<double>? get fvec => const fb.ListReader<double>(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<double> dvec;
List<double> fvec;
List<double>? dvec;
List<double>? 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<MonsterExtra> {
}
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<double> _dvec;
final List<double> _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<double>? _dvec;
final List<double>? _fvec;
MonsterExtraObjectBuilder({
double d0,
double d1,
double d2,
double d3,
double f0,
double f1,
double f2,
double f3,
List<double> dvec,
List<double> fvec,
double? d0,
double? d1,
double? d2,
double? d3,
double? f0,
double? f1,
double? f2,
double? f3,
List<double>? dvec,
List<double>? 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);

View File

@@ -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);

File diff suppressed because it is too large Load Diff

View File

@@ -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);

View File

@@ -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<int,UnionInNestedNSTypeId> values = {0: NONE,1: TableInNestedNS,};
static const Map<int, UnionInNestedNSTypeId> values = {
0: NONE,
1: TableInNestedNS};
static const fb.Reader<UnionInNestedNSTypeId> 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<int,EnumInNestedNS> values = {0: A,1: B,2: C,};
static const Map<int, EnumInNestedNS> values = {
0: A,
1: B,
2: C};
static const fb.Reader<EnumInNestedNS> 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<TableInNestedNS> {
}
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<StructInNestedNS> {
}
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);

View File

@@ -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<TableInFirstNS> {
}
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<SecondTableInA> {
}
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);

View File

@@ -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<TableInC> {
}
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);