mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-28 06:28:06 +00:00
dart - add Packable interface (#6846)
This commit is contained in:
@@ -187,7 +187,7 @@ class Monster {
|
|||||||
int get mana => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 150);
|
int get mana => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 150);
|
||||||
int get hp => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 100);
|
int get hp => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 100);
|
||||||
String? get name => const fb.StringReader().vTableGetNullable(_bc, _bcOffset, 10);
|
String? get name => const fb.StringReader().vTableGetNullable(_bc, _bcOffset, 10);
|
||||||
List<int>? get inventory => const fb.ListReader<int>(fb.Uint8Reader()).vTableGetNullable(_bc, _bcOffset, 14);
|
List<int>? get inventory => const fb.Uint8ListReader().vTableGetNullable(_bc, _bcOffset, 14);
|
||||||
Color get color => Color.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 16, 2));
|
Color get color => Color.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 16, 2));
|
||||||
List<Weapon>? get weapons => const fb.ListReader<Weapon>(Weapon.reader).vTableGetNullable(_bc, _bcOffset, 18);
|
List<Weapon>? get weapons => const fb.ListReader<Weapon>(Weapon.reader).vTableGetNullable(_bc, _bcOffset, 18);
|
||||||
EquipmentTypeId? get equippedType => EquipmentTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 20));
|
EquipmentTypeId? get equippedType => EquipmentTypeId._createOrNull(const fb.Uint8Reader().vTableGetNullable(_bc, _bcOffset, 20));
|
||||||
|
|||||||
@@ -77,6 +77,12 @@ class BufferContext {
|
|||||||
int _getUint8(int offset) => _buffer.getUint8(offset);
|
int _getUint8(int offset) => _buffer.getUint8(offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Interface implemented by the "object-api" classes (ending with "T").
|
||||||
|
abstract class Packable {
|
||||||
|
/// Serialize the object using the given builder, returning the offset.
|
||||||
|
int pack(Builder fbBuilder);
|
||||||
|
}
|
||||||
|
|
||||||
/// Class implemented by typed builders generated by flatc.
|
/// Class implemented by typed builders generated by flatc.
|
||||||
abstract class ObjectBuilder {
|
abstract class ObjectBuilder {
|
||||||
int? _firstOffset;
|
int? _firstOffset;
|
||||||
|
|||||||
@@ -751,6 +751,7 @@ class BuilderTest {
|
|||||||
class ObjectAPITest {
|
class ObjectAPITest {
|
||||||
void test_tableStat() {
|
void test_tableStat() {
|
||||||
final object1 = example.StatT(count: 3, id: "foo", val: 4);
|
final object1 = example.StatT(count: 3, id: "foo", val: 4);
|
||||||
|
expect(object1 is Packable, isTrue);
|
||||||
final fbb = Builder();
|
final fbb = Builder();
|
||||||
fbb.finish(object1.pack(fbb));
|
fbb.finish(object1.pack(fbb));
|
||||||
final object2 = example.Stat(fbb.buffer).unpack();
|
final object2 = example.Stat(fbb.buffer).unpack();
|
||||||
|
|||||||
@@ -35,7 +35,8 @@ class Monster {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class MonsterT {
|
class MonsterT implements fb.Packable {
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(0);
|
fbBuilder.startTable(0);
|
||||||
return fbBuilder.endTable();
|
return fbBuilder.endTable();
|
||||||
|
|||||||
@@ -277,7 +277,7 @@ class Test {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TestT {
|
class TestT implements fb.Packable {
|
||||||
int a;
|
int a;
|
||||||
int b;
|
int b;
|
||||||
|
|
||||||
@@ -285,6 +285,7 @@ class TestT {
|
|||||||
required this.a,
|
required this.a,
|
||||||
required this.b});
|
required this.b});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.pad(1);
|
fbBuilder.pad(1);
|
||||||
fbBuilder.putInt8(b);
|
fbBuilder.putInt8(b);
|
||||||
@@ -379,12 +380,13 @@ class TestSimpleTableWithEnum {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TestSimpleTableWithEnumT {
|
class TestSimpleTableWithEnumT implements fb.Packable {
|
||||||
Color color;
|
Color color;
|
||||||
|
|
||||||
TestSimpleTableWithEnumT({
|
TestSimpleTableWithEnumT({
|
||||||
this.color = Color.Green});
|
this.color = Color.Green});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(1);
|
fbBuilder.startTable(1);
|
||||||
fbBuilder.addUint8(0, color.value);
|
fbBuilder.addUint8(0, color.value);
|
||||||
@@ -482,7 +484,7 @@ class Vec3 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Vec3T {
|
class Vec3T implements fb.Packable {
|
||||||
double x;
|
double x;
|
||||||
double y;
|
double y;
|
||||||
double z;
|
double z;
|
||||||
@@ -498,6 +500,7 @@ class Vec3T {
|
|||||||
required this.test2,
|
required this.test2,
|
||||||
required this.test3});
|
required this.test3});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.pad(2);
|
fbBuilder.pad(2);
|
||||||
test3.pack(fbBuilder);
|
test3.pack(fbBuilder);
|
||||||
@@ -620,7 +623,7 @@ class Ability {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class AbilityT {
|
class AbilityT implements fb.Packable {
|
||||||
int id;
|
int id;
|
||||||
int distance;
|
int distance;
|
||||||
|
|
||||||
@@ -628,6 +631,7 @@ class AbilityT {
|
|||||||
required this.id,
|
required this.id,
|
||||||
required this.distance});
|
required this.distance});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.putUint32(distance);
|
fbBuilder.putUint32(distance);
|
||||||
fbBuilder.putUint32(id);
|
fbBuilder.putUint32(id);
|
||||||
@@ -719,7 +723,7 @@ class StructOfStructs {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class StructOfStructsT {
|
class StructOfStructsT implements fb.Packable {
|
||||||
AbilityT a;
|
AbilityT a;
|
||||||
TestT b;
|
TestT b;
|
||||||
AbilityT c;
|
AbilityT c;
|
||||||
@@ -729,6 +733,7 @@ class StructOfStructsT {
|
|||||||
required this.b,
|
required this.b,
|
||||||
required this.c});
|
required this.c});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
c.pack(fbBuilder);
|
c.pack(fbBuilder);
|
||||||
b.pack(fbBuilder);
|
b.pack(fbBuilder);
|
||||||
@@ -830,7 +835,7 @@ class Stat {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class StatT {
|
class StatT implements fb.Packable {
|
||||||
String? id;
|
String? id;
|
||||||
int val;
|
int val;
|
||||||
int count;
|
int count;
|
||||||
@@ -840,6 +845,7 @@ class StatT {
|
|||||||
this.val = 0,
|
this.val = 0,
|
||||||
this.count = 0});
|
this.count = 0});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? idOffset = id == null ? null
|
final int? idOffset = id == null ? null
|
||||||
: fbBuilder.writeString(id!);
|
: fbBuilder.writeString(id!);
|
||||||
@@ -953,12 +959,13 @@ class Referrable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class ReferrableT {
|
class ReferrableT implements fb.Packable {
|
||||||
int id;
|
int id;
|
||||||
|
|
||||||
ReferrableT({
|
ReferrableT({
|
||||||
this.id = 0});
|
this.id = 0});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(1);
|
fbBuilder.startTable(1);
|
||||||
fbBuilder.addUint64(0, id);
|
fbBuilder.addUint64(0, id);
|
||||||
@@ -1173,7 +1180,7 @@ class Monster {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// an example documentation comment: "monster object"
|
/// an example documentation comment: "monster object"
|
||||||
class MonsterT {
|
class MonsterT implements fb.Packable {
|
||||||
Vec3T? pos;
|
Vec3T? pos;
|
||||||
int mana;
|
int mana;
|
||||||
int hp;
|
int hp;
|
||||||
@@ -1279,6 +1286,7 @@ class MonsterT {
|
|||||||
this.testrequirednestedflatbuffer,
|
this.testrequirednestedflatbuffer,
|
||||||
this.scalarKeySortedTables});
|
this.scalarKeySortedTables});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? nameOffset = name == null ? null
|
final int? nameOffset = name == null ? null
|
||||||
: fbBuilder.writeString(name!);
|
: fbBuilder.writeString(name!);
|
||||||
@@ -1942,7 +1950,7 @@ class TypeAliases {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TypeAliasesT {
|
class TypeAliasesT implements fb.Packable {
|
||||||
int i8;
|
int i8;
|
||||||
int u8;
|
int u8;
|
||||||
int i16;
|
int i16;
|
||||||
@@ -1970,6 +1978,7 @@ class TypeAliasesT {
|
|||||||
this.v8,
|
this.v8,
|
||||||
this.vf64});
|
this.vf64});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? v8Offset = v8 == null ? null
|
final int? v8Offset = v8 == null ? null
|
||||||
: fbBuilder.writeListInt8(v8!);
|
: fbBuilder.writeListInt8(v8!);
|
||||||
|
|||||||
@@ -35,7 +35,8 @@ class InParentNamespace {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class InParentNamespaceT {
|
class InParentNamespaceT implements fb.Packable {
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(0);
|
fbBuilder.startTable(0);
|
||||||
return fbBuilder.endTable();
|
return fbBuilder.endTable();
|
||||||
|
|||||||
@@ -513,7 +513,7 @@ class DartGenerator : public BaseGenerator {
|
|||||||
GenDocComment(struct_def.doc_comment, &code, "");
|
GenDocComment(struct_def.doc_comment, &code, "");
|
||||||
|
|
||||||
std::string class_name = struct_def.name + "T";
|
std::string class_name = struct_def.name + "T";
|
||||||
code += "class " + class_name + " {\n";
|
code += "class " + class_name + " implements " + _kFb + ".Packable {\n";
|
||||||
|
|
||||||
std::string constructor_args;
|
std::string constructor_args;
|
||||||
for (auto it = non_deprecated_fields.begin();
|
for (auto it = non_deprecated_fields.begin();
|
||||||
@@ -615,6 +615,7 @@ class DartGenerator : public BaseGenerator {
|
|||||||
const std::vector<std::pair<int, FieldDef *>> &non_deprecated_fields) {
|
const std::vector<std::pair<int, FieldDef *>> &non_deprecated_fields) {
|
||||||
std::string code;
|
std::string code;
|
||||||
|
|
||||||
|
code += " @override\n";
|
||||||
code += " int pack(fb.Builder fbBuilder) {\n";
|
code += " int pack(fb.Builder fbBuilder) {\n";
|
||||||
code += GenObjectBuilderImplementation(struct_def, non_deprecated_fields,
|
code += GenObjectBuilderImplementation(struct_def, non_deprecated_fields,
|
||||||
false, true);
|
false, true);
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ class MonsterExtra {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class MonsterExtraT {
|
class MonsterExtraT implements fb.Packable {
|
||||||
double d0;
|
double d0;
|
||||||
double d1;
|
double d1;
|
||||||
double d2;
|
double d2;
|
||||||
@@ -77,6 +77,7 @@ class MonsterExtraT {
|
|||||||
this.dvec,
|
this.dvec,
|
||||||
this.fvec});
|
this.fvec});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? dvecOffset = dvec == null ? null
|
final int? dvecOffset = dvec == null ? null
|
||||||
: fbBuilder.writeListFloat64(dvec!);
|
: fbBuilder.writeListFloat64(dvec!);
|
||||||
|
|||||||
@@ -35,7 +35,8 @@ class Monster {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class MonsterT {
|
class MonsterT implements fb.Packable {
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(0);
|
fbBuilder.startTable(0);
|
||||||
return fbBuilder.endTable();
|
return fbBuilder.endTable();
|
||||||
|
|||||||
@@ -277,7 +277,7 @@ class Test {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TestT {
|
class TestT implements fb.Packable {
|
||||||
int a;
|
int a;
|
||||||
int b;
|
int b;
|
||||||
|
|
||||||
@@ -285,6 +285,7 @@ class TestT {
|
|||||||
required this.a,
|
required this.a,
|
||||||
required this.b});
|
required this.b});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.pad(1);
|
fbBuilder.pad(1);
|
||||||
fbBuilder.putInt8(b);
|
fbBuilder.putInt8(b);
|
||||||
@@ -379,12 +380,13 @@ class TestSimpleTableWithEnum {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TestSimpleTableWithEnumT {
|
class TestSimpleTableWithEnumT implements fb.Packable {
|
||||||
Color color;
|
Color color;
|
||||||
|
|
||||||
TestSimpleTableWithEnumT({
|
TestSimpleTableWithEnumT({
|
||||||
this.color = Color.Green});
|
this.color = Color.Green});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(1);
|
fbBuilder.startTable(1);
|
||||||
fbBuilder.addUint8(0, color.value);
|
fbBuilder.addUint8(0, color.value);
|
||||||
@@ -482,7 +484,7 @@ class Vec3 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Vec3T {
|
class Vec3T implements fb.Packable {
|
||||||
double x;
|
double x;
|
||||||
double y;
|
double y;
|
||||||
double z;
|
double z;
|
||||||
@@ -498,6 +500,7 @@ class Vec3T {
|
|||||||
required this.test2,
|
required this.test2,
|
||||||
required this.test3});
|
required this.test3});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.pad(2);
|
fbBuilder.pad(2);
|
||||||
test3.pack(fbBuilder);
|
test3.pack(fbBuilder);
|
||||||
@@ -620,7 +623,7 @@ class Ability {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class AbilityT {
|
class AbilityT implements fb.Packable {
|
||||||
int id;
|
int id;
|
||||||
int distance;
|
int distance;
|
||||||
|
|
||||||
@@ -628,6 +631,7 @@ class AbilityT {
|
|||||||
required this.id,
|
required this.id,
|
||||||
required this.distance});
|
required this.distance});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.putUint32(distance);
|
fbBuilder.putUint32(distance);
|
||||||
fbBuilder.putUint32(id);
|
fbBuilder.putUint32(id);
|
||||||
@@ -719,7 +723,7 @@ class StructOfStructs {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class StructOfStructsT {
|
class StructOfStructsT implements fb.Packable {
|
||||||
AbilityT a;
|
AbilityT a;
|
||||||
TestT b;
|
TestT b;
|
||||||
AbilityT c;
|
AbilityT c;
|
||||||
@@ -729,6 +733,7 @@ class StructOfStructsT {
|
|||||||
required this.b,
|
required this.b,
|
||||||
required this.c});
|
required this.c});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
c.pack(fbBuilder);
|
c.pack(fbBuilder);
|
||||||
b.pack(fbBuilder);
|
b.pack(fbBuilder);
|
||||||
@@ -830,7 +835,7 @@ class Stat {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class StatT {
|
class StatT implements fb.Packable {
|
||||||
String? id;
|
String? id;
|
||||||
int val;
|
int val;
|
||||||
int count;
|
int count;
|
||||||
@@ -840,6 +845,7 @@ class StatT {
|
|||||||
this.val = 0,
|
this.val = 0,
|
||||||
this.count = 0});
|
this.count = 0});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? idOffset = id == null ? null
|
final int? idOffset = id == null ? null
|
||||||
: fbBuilder.writeString(id!);
|
: fbBuilder.writeString(id!);
|
||||||
@@ -953,12 +959,13 @@ class Referrable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class ReferrableT {
|
class ReferrableT implements fb.Packable {
|
||||||
int id;
|
int id;
|
||||||
|
|
||||||
ReferrableT({
|
ReferrableT({
|
||||||
this.id = 0});
|
this.id = 0});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(1);
|
fbBuilder.startTable(1);
|
||||||
fbBuilder.addUint64(0, id);
|
fbBuilder.addUint64(0, id);
|
||||||
@@ -1173,7 +1180,7 @@ class Monster {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// an example documentation comment: "monster object"
|
/// an example documentation comment: "monster object"
|
||||||
class MonsterT {
|
class MonsterT implements fb.Packable {
|
||||||
Vec3T? pos;
|
Vec3T? pos;
|
||||||
int mana;
|
int mana;
|
||||||
int hp;
|
int hp;
|
||||||
@@ -1279,6 +1286,7 @@ class MonsterT {
|
|||||||
this.testrequirednestedflatbuffer,
|
this.testrequirednestedflatbuffer,
|
||||||
this.scalarKeySortedTables});
|
this.scalarKeySortedTables});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? nameOffset = name == null ? null
|
final int? nameOffset = name == null ? null
|
||||||
: fbBuilder.writeString(name!);
|
: fbBuilder.writeString(name!);
|
||||||
@@ -1942,7 +1950,7 @@ class TypeAliases {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TypeAliasesT {
|
class TypeAliasesT implements fb.Packable {
|
||||||
int i8;
|
int i8;
|
||||||
int u8;
|
int u8;
|
||||||
int i16;
|
int i16;
|
||||||
@@ -1970,6 +1978,7 @@ class TypeAliasesT {
|
|||||||
this.v8,
|
this.v8,
|
||||||
this.vf64});
|
this.vf64});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? v8Offset = v8 == null ? null
|
final int? v8Offset = v8 == null ? null
|
||||||
: fbBuilder.writeListInt8(v8!);
|
: fbBuilder.writeListInt8(v8!);
|
||||||
|
|||||||
@@ -35,7 +35,8 @@ class InParentNamespace {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class InParentNamespaceT {
|
class InParentNamespaceT implements fb.Packable {
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(0);
|
fbBuilder.startTable(0);
|
||||||
return fbBuilder.endTable();
|
return fbBuilder.endTable();
|
||||||
|
|||||||
@@ -125,12 +125,13 @@ class TableInNestedNS {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TableInNestedNST {
|
class TableInNestedNST implements fb.Packable {
|
||||||
int foo;
|
int foo;
|
||||||
|
|
||||||
TableInNestedNST({
|
TableInNestedNST({
|
||||||
this.foo = 0});
|
this.foo = 0});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.startTable(1);
|
fbBuilder.startTable(1);
|
||||||
fbBuilder.addInt32(0, foo);
|
fbBuilder.addInt32(0, foo);
|
||||||
@@ -220,7 +221,7 @@ class StructInNestedNS {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class StructInNestedNST {
|
class StructInNestedNST implements fb.Packable {
|
||||||
int a;
|
int a;
|
||||||
int b;
|
int b;
|
||||||
|
|
||||||
@@ -228,6 +229,7 @@ class StructInNestedNST {
|
|||||||
required this.a,
|
required this.a,
|
||||||
required this.b});
|
required this.b});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
fbBuilder.putInt32(b);
|
fbBuilder.putInt32(b);
|
||||||
fbBuilder.putInt32(a);
|
fbBuilder.putInt32(a);
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ class TableInFirstNS {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TableInFirstNST {
|
class TableInFirstNST implements fb.Packable {
|
||||||
namespace_a_namespace_b.TableInNestedNST? fooTable;
|
namespace_a_namespace_b.TableInNestedNST? fooTable;
|
||||||
EnumInNestedNS fooEnum;
|
EnumInNestedNS fooEnum;
|
||||||
UnionInNestedNSTypeId? fooUnionType;
|
UnionInNestedNSTypeId? fooUnionType;
|
||||||
@@ -63,6 +63,7 @@ class TableInFirstNST {
|
|||||||
this.fooUnion,
|
this.fooUnion,
|
||||||
this.fooStruct});
|
this.fooStruct});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? fooTableOffset = fooTable?.pack(fbBuilder);
|
final int? fooTableOffset = fooTable?.pack(fbBuilder);
|
||||||
final int? fooUnionOffset = fooUnion?.pack(fbBuilder);
|
final int? fooUnionOffset = fooUnion?.pack(fbBuilder);
|
||||||
@@ -198,12 +199,13 @@ class SecondTableInA {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class SecondTableInAT {
|
class SecondTableInAT implements fb.Packable {
|
||||||
namespace_c.TableInCT? referToC;
|
namespace_c.TableInCT? referToC;
|
||||||
|
|
||||||
SecondTableInAT({
|
SecondTableInAT({
|
||||||
this.referToC});
|
this.referToC});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? referToCOffset = referToC?.pack(fbBuilder);
|
final int? referToCOffset = referToC?.pack(fbBuilder);
|
||||||
fbBuilder.startTable(1);
|
fbBuilder.startTable(1);
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ class TableInC {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class TableInCT {
|
class TableInCT implements fb.Packable {
|
||||||
namespace_a.TableInFirstNST? referToA1;
|
namespace_a.TableInFirstNST? referToA1;
|
||||||
namespace_a.SecondTableInAT? referToA2;
|
namespace_a.SecondTableInAT? referToA2;
|
||||||
|
|
||||||
@@ -46,6 +46,7 @@ class TableInCT {
|
|||||||
this.referToA1,
|
this.referToA1,
|
||||||
this.referToA2});
|
this.referToA2});
|
||||||
|
|
||||||
|
@override
|
||||||
int pack(fb.Builder fbBuilder) {
|
int pack(fb.Builder fbBuilder) {
|
||||||
final int? referToA1Offset = referToA1?.pack(fbBuilder);
|
final int? referToA1Offset = referToA1?.pack(fbBuilder);
|
||||||
final int? referToA2Offset = referToA2?.pack(fbBuilder);
|
final int? referToA2Offset = referToA2?.pack(fbBuilder);
|
||||||
|
|||||||
Reference in New Issue
Block a user