...
1// automatically generated by the FlatBuffers compiler, do not modify
2// ignore_for_file: unused_import, unused_field, unused_element, unused_local_variable
3
4import 'dart:typed_data' show Uint8List;
5import 'package:flat_buffers/flat_buffers.dart' as fb;
6
7
8class Galaxy {
9 Galaxy._(this._bc, this._bcOffset);
10 factory Galaxy(List<int> bytes) {
11 final rootRef = fb.BufferContext.fromBytes(bytes);
12 return reader.read(rootRef, 0);
13 }
14
15 static const fb.Reader<Galaxy> reader = _GalaxyReader();
16
17 final fb.BufferContext _bc;
18 final int _bcOffset;
19
20 int get numStars => const fb.Int64Reader().vTableGet(_bc, _bcOffset, 4, 0);
21
22 @override
23 String toString() {
24 return 'Galaxy{numStars: ${numStars}}';
25 }
26}
27
28class _GalaxyReader extends fb.TableReader<Galaxy> {
29 const _GalaxyReader();
30
31 @override
32 Galaxy createObject(fb.BufferContext bc, int offset) =>
33 Galaxy._(bc, offset);
34}
35
36class GalaxyBuilder {
37 GalaxyBuilder(this.fbBuilder);
38
39 final fb.Builder fbBuilder;
40
41 void begin() {
42 fbBuilder.startTable(1);
43 }
44
45 int addNumStars(int? numStars) {
46 fbBuilder.addInt64(0, numStars);
47 return fbBuilder.offset;
48 }
49
50 int finish() {
51 return fbBuilder.endTable();
52 }
53}
54
55class GalaxyObjectBuilder extends fb.ObjectBuilder {
56 final int? _numStars;
57
58 GalaxyObjectBuilder({
59 int? numStars,
60 })
61 : _numStars = numStars;
62
63 /// Finish building, and store into the [fbBuilder].
64 @override
65 int finish(fb.Builder fbBuilder) {
66 fbBuilder.startTable(1);
67 fbBuilder.addInt64(0, _numStars);
68 return fbBuilder.endTable();
69 }
70
71 /// Convenience method to serialize to byte list.
72 @override
73 Uint8List toBytes([String? fileIdentifier]) {
74 final fbBuilder = fb.Builder(deduplicateTables: false);
75 fbBuilder.finish(finish(fbBuilder), fileIdentifier);
76 return fbBuilder.buffer;
77 }
78}
79class Universe {
80 Universe._(this._bc, this._bcOffset);
81 factory Universe(List<int> bytes) {
82 final rootRef = fb.BufferContext.fromBytes(bytes);
83 return reader.read(rootRef, 0);
84 }
85
86 static const fb.Reader<Universe> reader = _UniverseReader();
87
88 final fb.BufferContext _bc;
89 final int _bcOffset;
90
91 double get age => const fb.Float64Reader().vTableGet(_bc, _bcOffset, 4, 0.0);
92 List<Galaxy>? get galaxies => const fb.ListReader<Galaxy>(Galaxy.reader).vTableGetNullable(_bc, _bcOffset, 6);
93
94 @override
95 String toString() {
96 return 'Universe{age: ${age}, galaxies: ${galaxies}}';
97 }
98}
99
100class _UniverseReader extends fb.TableReader<Universe> {
101 const _UniverseReader();
102
103 @override
104 Universe createObject(fb.BufferContext bc, int offset) =>
105 Universe._(bc, offset);
106}
107
108class UniverseBuilder {
109 UniverseBuilder(this.fbBuilder);
110
111 final fb.Builder fbBuilder;
112
113 void begin() {
114 fbBuilder.startTable(2);
115 }
116
117 int addAge(double? age) {
118 fbBuilder.addFloat64(0, age);
119 return fbBuilder.offset;
120 }
121 int addGalaxiesOffset(int? offset) {
122 fbBuilder.addOffset(1, offset);
123 return fbBuilder.offset;
124 }
125
126 int finish() {
127 return fbBuilder.endTable();
128 }
129}
130
131class UniverseObjectBuilder extends fb.ObjectBuilder {
132 final double? _age;
133 final List<GalaxyObjectBuilder>? _galaxies;
134
135 UniverseObjectBuilder({
136 double? age,
137 List<GalaxyObjectBuilder>? galaxies,
138 })
139 : _age = age,
140 _galaxies = galaxies;
141
142 /// Finish building, and store into the [fbBuilder].
143 @override
144 int finish(fb.Builder fbBuilder) {
145 final int? galaxiesOffset = _galaxies == null ? null
146 : fbBuilder.writeList(_galaxies!.map((b) => b.getOrCreateOffset(fbBuilder)).toList());
147 fbBuilder.startTable(2);
148 fbBuilder.addFloat64(0, _age);
149 fbBuilder.addOffset(1, galaxiesOffset);
150 return fbBuilder.endTable();
151 }
152
153 /// Convenience method to serialize to byte list.
154 @override
155 Uint8List toBytes([String? fileIdentifier]) {
156 final fbBuilder = fb.Builder(deduplicateTables: false);
157 fbBuilder.finish(finish(fbBuilder), fileIdentifier);
158 return fbBuilder.buffer;
159 }
160}
View as plain text