mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-27 09:42:19 +00:00
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:
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user