Coverage Report

Created: 2026-06-30 08:33

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/gdal/frmts/icechunk/generated/snapshot_generated.h
Line
Count
Source
1
// automatically generated by the FlatBuffers compiler, do not modify
2
3
4
#ifndef FLATBUFFERS_GENERATED_SNAPSHOT_GENERATED_H_
5
#define FLATBUFFERS_GENERATED_SNAPSHOT_GENERATED_H_
6
7
#include "flatbuffers/flatbuffers.h"
8
9
// Ensure the included flatbuffers.h is the same version as when this file was
10
// generated, otherwise it may not be compatible.
11
static_assert(FLATBUFFERS_VERSION_MAJOR == 2 &&
12
              FLATBUFFERS_VERSION_MINOR == 0 &&
13
              FLATBUFFERS_VERSION_REVISION == 8,
14
             "Non-compatible flatbuffers version included");
15
16
#include "common_generated.h"
17
18
namespace generated {
19
20
struct ManifestFileInfo;
21
22
struct ManifestFileInfoV2;
23
struct ManifestFileInfoV2Builder;
24
25
struct ChunkIndexRange;
26
27
struct ManifestRef;
28
struct ManifestRefBuilder;
29
30
struct DimensionShape;
31
32
struct DimensionShapeV2;
33
struct DimensionShapeV2Builder;
34
35
struct DimensionName;
36
struct DimensionNameBuilder;
37
38
struct GroupNodeData;
39
struct GroupNodeDataBuilder;
40
41
struct ArrayNodeData;
42
struct ArrayNodeDataBuilder;
43
44
struct NodeSnapshot;
45
struct NodeSnapshotBuilder;
46
47
struct Snapshot;
48
struct SnapshotBuilder;
49
50
enum class NodeData : uint8_t {
51
  NONE = 0,
52
  Array = 1,
53
  Group = 2,
54
  MIN = NONE,
55
  MAX = Group
56
};
57
58
0
inline const NodeData (&EnumValuesNodeData())[3] {
59
0
  static const NodeData values[] = {
60
0
    NodeData::NONE,
61
0
    NodeData::Array,
62
0
    NodeData::Group
63
0
  };
64
0
  return values;
65
0
}
66
67
0
inline const char * const *EnumNamesNodeData() {
68
0
  static const char * const names[4] = {
69
0
    "NONE",
70
0
    "Array",
71
0
    "Group",
72
0
    nullptr
73
0
  };
74
0
  return names;
75
0
}
76
77
0
inline const char *EnumNameNodeData(NodeData e) {
78
0
  if (flatbuffers::IsOutRange(e, NodeData::NONE, NodeData::Group)) return "";
79
0
  const size_t index = static_cast<size_t>(e);
80
0
  return EnumNamesNodeData()[index];
81
0
}
82
83
template<typename T> struct NodeDataTraits {
84
  static const NodeData enum_value = NodeData::NONE;
85
};
86
87
template<> struct NodeDataTraits<generated::ArrayNodeData> {
88
  static const NodeData enum_value = NodeData::Array;
89
};
90
91
template<> struct NodeDataTraits<generated::GroupNodeData> {
92
  static const NodeData enum_value = NodeData::Group;
93
};
94
95
bool VerifyNodeData(flatbuffers::Verifier &verifier, const void *obj, NodeData type);
96
bool VerifyNodeDataVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<NodeData> *types);
97
98
FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(8) ManifestFileInfo FLATBUFFERS_FINAL_CLASS {
99
 private:
100
  generated::ObjectId12 id_;
101
  int32_t padding0__;
102
  uint64_t size_bytes_;
103
  uint32_t num_chunk_refs_;
104
  int32_t padding1__;
105
106
 public:
107
  struct Traits;
108
  ManifestFileInfo()
109
      : id_(),
110
        padding0__(0),
111
        size_bytes_(0),
112
        num_chunk_refs_(0),
113
0
        padding1__(0) {
114
0
    (void)padding0__;
115
0
    (void)padding1__;
116
0
  }
117
  ManifestFileInfo(const generated::ObjectId12 &_id, uint64_t _size_bytes, uint32_t _num_chunk_refs)
118
      : id_(_id),
119
        padding0__(0),
120
        size_bytes_(flatbuffers::EndianScalar(_size_bytes)),
121
        num_chunk_refs_(flatbuffers::EndianScalar(_num_chunk_refs)),
122
0
        padding1__(0) {
123
0
    (void)padding0__;
124
0
    (void)padding1__;
125
0
  }
126
0
  const generated::ObjectId12 &id() const {
127
0
    return id_;
128
0
  }
129
0
  uint64_t size_bytes() const {
130
0
    return flatbuffers::EndianScalar(size_bytes_);
131
0
  }
132
0
  uint32_t num_chunk_refs() const {
133
0
    return flatbuffers::EndianScalar(num_chunk_refs_);
134
0
  }
135
};
136
FLATBUFFERS_STRUCT_END(ManifestFileInfo, 32);
137
138
struct ManifestFileInfo::Traits {
139
  using type = ManifestFileInfo;
140
};
141
142
FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) ChunkIndexRange FLATBUFFERS_FINAL_CLASS {
143
 private:
144
  uint32_t from_;
145
  uint32_t to_;
146
147
 public:
148
  struct Traits;
149
  ChunkIndexRange()
150
      : from_(0),
151
0
        to_(0) {
152
0
  }
153
  ChunkIndexRange(uint32_t _from, uint32_t _to)
154
      : from_(flatbuffers::EndianScalar(_from)),
155
0
        to_(flatbuffers::EndianScalar(_to)) {
156
0
  }
157
0
  uint32_t from() const {
158
0
    return flatbuffers::EndianScalar(from_);
159
0
  }
160
0
  uint32_t to() const {
161
0
    return flatbuffers::EndianScalar(to_);
162
0
  }
163
};
164
FLATBUFFERS_STRUCT_END(ChunkIndexRange, 8);
165
166
struct ChunkIndexRange::Traits {
167
  using type = ChunkIndexRange;
168
};
169
170
FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(8) DimensionShape FLATBUFFERS_FINAL_CLASS {
171
 private:
172
  uint64_t array_length_;
173
  uint64_t chunk_length_;
174
175
 public:
176
  struct Traits;
177
  DimensionShape()
178
      : array_length_(0),
179
0
        chunk_length_(0) {
180
0
  }
181
  DimensionShape(uint64_t _array_length, uint64_t _chunk_length)
182
      : array_length_(flatbuffers::EndianScalar(_array_length)),
183
0
        chunk_length_(flatbuffers::EndianScalar(_chunk_length)) {
184
0
  }
185
0
  uint64_t array_length() const {
186
0
    return flatbuffers::EndianScalar(array_length_);
187
0
  }
188
0
  uint64_t chunk_length() const {
189
0
    return flatbuffers::EndianScalar(chunk_length_);
190
0
  }
191
};
192
FLATBUFFERS_STRUCT_END(DimensionShape, 16);
193
194
struct DimensionShape::Traits {
195
  using type = DimensionShape;
196
};
197
198
struct ManifestFileInfoV2 FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
199
  typedef ManifestFileInfoV2Builder Builder;
200
  struct Traits;
201
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
202
    VT_ID = 4,
203
    VT_SIZE_BYTES = 6,
204
    VT_NUM_CHUNK_REFS = 8,
205
    VT_EXTRA = 10
206
  };
207
0
  const generated::ObjectId12 *id() const {
208
0
    return GetStruct<const generated::ObjectId12 *>(VT_ID);
209
0
  }
210
0
  uint64_t size_bytes() const {
211
0
    return GetField<uint64_t>(VT_SIZE_BYTES, 0);
212
0
  }
213
0
  uint32_t num_chunk_refs() const {
214
0
    return GetField<uint32_t>(VT_NUM_CHUNK_REFS, 0);
215
0
  }
216
0
  const flatbuffers::Vector<uint8_t> *extra() const {
217
0
    return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_EXTRA);
218
0
  }
219
0
  bool Verify(flatbuffers::Verifier &verifier) const {
220
0
    return VerifyTableStart(verifier) &&
221
0
           VerifyField<generated::ObjectId12>(verifier, VT_ID, 1) &&
222
0
           VerifyField<uint64_t>(verifier, VT_SIZE_BYTES, 8) &&
223
0
           VerifyField<uint32_t>(verifier, VT_NUM_CHUNK_REFS, 4) &&
224
0
           VerifyOffset(verifier, VT_EXTRA) &&
225
0
           verifier.VerifyVector(extra()) &&
226
0
           verifier.EndTable();
227
0
  }
228
};
229
230
struct ManifestFileInfoV2Builder {
231
  typedef ManifestFileInfoV2 Table;
232
  flatbuffers::FlatBufferBuilder &fbb_;
233
  flatbuffers::uoffset_t start_;
234
0
  void add_id(const generated::ObjectId12 *id) {
235
0
    fbb_.AddStruct(ManifestFileInfoV2::VT_ID, id);
236
0
  }
237
0
  void add_size_bytes(uint64_t size_bytes) {
238
0
    fbb_.AddElement<uint64_t>(ManifestFileInfoV2::VT_SIZE_BYTES, size_bytes, 0);
239
0
  }
240
0
  void add_num_chunk_refs(uint32_t num_chunk_refs) {
241
0
    fbb_.AddElement<uint32_t>(ManifestFileInfoV2::VT_NUM_CHUNK_REFS, num_chunk_refs, 0);
242
0
  }
243
0
  void add_extra(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra) {
244
0
    fbb_.AddOffset(ManifestFileInfoV2::VT_EXTRA, extra);
245
0
  }
246
  explicit ManifestFileInfoV2Builder(flatbuffers::FlatBufferBuilder &_fbb)
247
0
        : fbb_(_fbb) {
248
0
    start_ = fbb_.StartTable();
249
0
  }
250
0
  flatbuffers::Offset<ManifestFileInfoV2> Finish() {
251
0
    const auto end = fbb_.EndTable(start_);
252
0
    auto o = flatbuffers::Offset<ManifestFileInfoV2>(end);
253
0
    return o;
254
0
  }
255
};
256
257
inline flatbuffers::Offset<ManifestFileInfoV2> CreateManifestFileInfoV2(
258
    flatbuffers::FlatBufferBuilder &_fbb,
259
    const generated::ObjectId12 *id = nullptr,
260
    uint64_t size_bytes = 0,
261
    uint32_t num_chunk_refs = 0,
262
0
    flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra = 0) {
263
0
  ManifestFileInfoV2Builder builder_(_fbb);
264
0
  builder_.add_size_bytes(size_bytes);
265
0
  builder_.add_extra(extra);
266
0
  builder_.add_num_chunk_refs(num_chunk_refs);
267
0
  builder_.add_id(id);
268
0
  return builder_.Finish();
269
0
}
270
271
struct ManifestFileInfoV2::Traits {
272
  using type = ManifestFileInfoV2;
273
  static auto constexpr Create = CreateManifestFileInfoV2;
274
};
275
276
inline flatbuffers::Offset<ManifestFileInfoV2> CreateManifestFileInfoV2Direct(
277
    flatbuffers::FlatBufferBuilder &_fbb,
278
    const generated::ObjectId12 *id = nullptr,
279
    uint64_t size_bytes = 0,
280
    uint32_t num_chunk_refs = 0,
281
0
    const std::vector<uint8_t> *extra = nullptr) {
282
0
  auto extra__ = extra ? _fbb.CreateVector<uint8_t>(*extra) : 0;
283
0
  return generated::CreateManifestFileInfoV2(
284
0
      _fbb,
285
0
      id,
286
0
      size_bytes,
287
0
      num_chunk_refs,
288
0
      extra__);
289
0
}
290
291
struct ManifestRef FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
292
  typedef ManifestRefBuilder Builder;
293
  struct Traits;
294
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
295
    VT_OBJECT_ID = 4,
296
    VT_EXTENTS = 6
297
  };
298
0
  const generated::ObjectId12 *object_id() const {
299
0
    return GetStruct<const generated::ObjectId12 *>(VT_OBJECT_ID);
300
0
  }
301
0
  const flatbuffers::Vector<const generated::ChunkIndexRange *> *extents() const {
302
0
    return GetPointer<const flatbuffers::Vector<const generated::ChunkIndexRange *> *>(VT_EXTENTS);
303
0
  }
304
0
  bool Verify(flatbuffers::Verifier &verifier) const {
305
0
    return VerifyTableStart(verifier) &&
306
0
           VerifyFieldRequired<generated::ObjectId12>(verifier, VT_OBJECT_ID, 1) &&
307
0
           VerifyOffsetRequired(verifier, VT_EXTENTS) &&
308
0
           verifier.VerifyVector(extents()) &&
309
0
           verifier.EndTable();
310
0
  }
311
};
312
313
struct ManifestRefBuilder {
314
  typedef ManifestRef Table;
315
  flatbuffers::FlatBufferBuilder &fbb_;
316
  flatbuffers::uoffset_t start_;
317
0
  void add_object_id(const generated::ObjectId12 *object_id) {
318
0
    fbb_.AddStruct(ManifestRef::VT_OBJECT_ID, object_id);
319
0
  }
320
0
  void add_extents(flatbuffers::Offset<flatbuffers::Vector<const generated::ChunkIndexRange *>> extents) {
321
0
    fbb_.AddOffset(ManifestRef::VT_EXTENTS, extents);
322
0
  }
323
  explicit ManifestRefBuilder(flatbuffers::FlatBufferBuilder &_fbb)
324
0
        : fbb_(_fbb) {
325
0
    start_ = fbb_.StartTable();
326
0
  }
327
0
  flatbuffers::Offset<ManifestRef> Finish() {
328
0
    const auto end = fbb_.EndTable(start_);
329
0
    auto o = flatbuffers::Offset<ManifestRef>(end);
330
0
    fbb_.Required(o, ManifestRef::VT_OBJECT_ID);
331
0
    fbb_.Required(o, ManifestRef::VT_EXTENTS);
332
0
    return o;
333
0
  }
334
};
335
336
inline flatbuffers::Offset<ManifestRef> CreateManifestRef(
337
    flatbuffers::FlatBufferBuilder &_fbb,
338
    const generated::ObjectId12 *object_id = nullptr,
339
0
    flatbuffers::Offset<flatbuffers::Vector<const generated::ChunkIndexRange *>> extents = 0) {
340
0
  ManifestRefBuilder builder_(_fbb);
341
0
  builder_.add_extents(extents);
342
0
  builder_.add_object_id(object_id);
343
0
  return builder_.Finish();
344
0
}
345
346
struct ManifestRef::Traits {
347
  using type = ManifestRef;
348
  static auto constexpr Create = CreateManifestRef;
349
};
350
351
inline flatbuffers::Offset<ManifestRef> CreateManifestRefDirect(
352
    flatbuffers::FlatBufferBuilder &_fbb,
353
    const generated::ObjectId12 *object_id = nullptr,
354
0
    const std::vector<generated::ChunkIndexRange> *extents = nullptr) {
355
0
  auto extents__ = extents ? _fbb.CreateVectorOfStructs<generated::ChunkIndexRange>(*extents) : 0;
356
0
  return generated::CreateManifestRef(
357
0
      _fbb,
358
0
      object_id,
359
0
      extents__);
360
0
}
361
362
struct DimensionShapeV2 FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
363
  typedef DimensionShapeV2Builder Builder;
364
  struct Traits;
365
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
366
    VT_ARRAY_LENGTH = 4,
367
    VT_NUM_CHUNKS = 6
368
  };
369
0
  uint64_t array_length() const {
370
0
    return GetField<uint64_t>(VT_ARRAY_LENGTH, 0);
371
0
  }
372
0
  uint32_t num_chunks() const {
373
0
    return GetField<uint32_t>(VT_NUM_CHUNKS, 0);
374
0
  }
375
0
  bool Verify(flatbuffers::Verifier &verifier) const {
376
0
    return VerifyTableStart(verifier) &&
377
0
           VerifyField<uint64_t>(verifier, VT_ARRAY_LENGTH, 8) &&
378
0
           VerifyField<uint32_t>(verifier, VT_NUM_CHUNKS, 4) &&
379
0
           verifier.EndTable();
380
0
  }
381
};
382
383
struct DimensionShapeV2Builder {
384
  typedef DimensionShapeV2 Table;
385
  flatbuffers::FlatBufferBuilder &fbb_;
386
  flatbuffers::uoffset_t start_;
387
0
  void add_array_length(uint64_t array_length) {
388
0
    fbb_.AddElement<uint64_t>(DimensionShapeV2::VT_ARRAY_LENGTH, array_length, 0);
389
0
  }
390
0
  void add_num_chunks(uint32_t num_chunks) {
391
0
    fbb_.AddElement<uint32_t>(DimensionShapeV2::VT_NUM_CHUNKS, num_chunks, 0);
392
0
  }
393
  explicit DimensionShapeV2Builder(flatbuffers::FlatBufferBuilder &_fbb)
394
0
        : fbb_(_fbb) {
395
0
    start_ = fbb_.StartTable();
396
0
  }
397
0
  flatbuffers::Offset<DimensionShapeV2> Finish() {
398
0
    const auto end = fbb_.EndTable(start_);
399
0
    auto o = flatbuffers::Offset<DimensionShapeV2>(end);
400
0
    return o;
401
0
  }
402
};
403
404
inline flatbuffers::Offset<DimensionShapeV2> CreateDimensionShapeV2(
405
    flatbuffers::FlatBufferBuilder &_fbb,
406
    uint64_t array_length = 0,
407
0
    uint32_t num_chunks = 0) {
408
0
  DimensionShapeV2Builder builder_(_fbb);
409
0
  builder_.add_array_length(array_length);
410
0
  builder_.add_num_chunks(num_chunks);
411
0
  return builder_.Finish();
412
0
}
413
414
struct DimensionShapeV2::Traits {
415
  using type = DimensionShapeV2;
416
  static auto constexpr Create = CreateDimensionShapeV2;
417
};
418
419
struct DimensionName FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
420
  typedef DimensionNameBuilder Builder;
421
  struct Traits;
422
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
423
    VT_NAME = 4
424
  };
425
0
  const flatbuffers::String *name() const {
426
0
    return GetPointer<const flatbuffers::String *>(VT_NAME);
427
0
  }
428
0
  bool Verify(flatbuffers::Verifier &verifier) const {
429
0
    return VerifyTableStart(verifier) &&
430
0
           VerifyOffset(verifier, VT_NAME) &&
431
0
           verifier.VerifyString(name()) &&
432
0
           verifier.EndTable();
433
0
  }
434
};
435
436
struct DimensionNameBuilder {
437
  typedef DimensionName Table;
438
  flatbuffers::FlatBufferBuilder &fbb_;
439
  flatbuffers::uoffset_t start_;
440
0
  void add_name(flatbuffers::Offset<flatbuffers::String> name) {
441
0
    fbb_.AddOffset(DimensionName::VT_NAME, name);
442
0
  }
443
  explicit DimensionNameBuilder(flatbuffers::FlatBufferBuilder &_fbb)
444
0
        : fbb_(_fbb) {
445
0
    start_ = fbb_.StartTable();
446
0
  }
447
0
  flatbuffers::Offset<DimensionName> Finish() {
448
0
    const auto end = fbb_.EndTable(start_);
449
0
    auto o = flatbuffers::Offset<DimensionName>(end);
450
0
    return o;
451
0
  }
452
};
453
454
inline flatbuffers::Offset<DimensionName> CreateDimensionName(
455
    flatbuffers::FlatBufferBuilder &_fbb,
456
0
    flatbuffers::Offset<flatbuffers::String> name = 0) {
457
0
  DimensionNameBuilder builder_(_fbb);
458
0
  builder_.add_name(name);
459
0
  return builder_.Finish();
460
0
}
461
462
struct DimensionName::Traits {
463
  using type = DimensionName;
464
  static auto constexpr Create = CreateDimensionName;
465
};
466
467
inline flatbuffers::Offset<DimensionName> CreateDimensionNameDirect(
468
    flatbuffers::FlatBufferBuilder &_fbb,
469
0
    const char *name = nullptr) {
470
0
  auto name__ = name ? _fbb.CreateString(name) : 0;
471
0
  return generated::CreateDimensionName(
472
0
      _fbb,
473
0
      name__);
474
0
}
475
476
struct GroupNodeData FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
477
  typedef GroupNodeDataBuilder Builder;
478
  struct Traits;
479
0
  bool Verify(flatbuffers::Verifier &verifier) const {
480
0
    return VerifyTableStart(verifier) &&
481
0
           verifier.EndTable();
482
0
  }
483
};
484
485
struct GroupNodeDataBuilder {
486
  typedef GroupNodeData Table;
487
  flatbuffers::FlatBufferBuilder &fbb_;
488
  flatbuffers::uoffset_t start_;
489
  explicit GroupNodeDataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
490
0
        : fbb_(_fbb) {
491
0
    start_ = fbb_.StartTable();
492
0
  }
493
0
  flatbuffers::Offset<GroupNodeData> Finish() {
494
0
    const auto end = fbb_.EndTable(start_);
495
0
    auto o = flatbuffers::Offset<GroupNodeData>(end);
496
0
    return o;
497
0
  }
498
};
499
500
inline flatbuffers::Offset<GroupNodeData> CreateGroupNodeData(
501
0
    flatbuffers::FlatBufferBuilder &_fbb) {
502
0
  GroupNodeDataBuilder builder_(_fbb);
503
0
  return builder_.Finish();
504
0
}
505
506
struct GroupNodeData::Traits {
507
  using type = GroupNodeData;
508
  static auto constexpr Create = CreateGroupNodeData;
509
};
510
511
struct ArrayNodeData FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
512
  typedef ArrayNodeDataBuilder Builder;
513
  struct Traits;
514
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
515
    VT_SHAPE = 4,
516
    VT_DIMENSION_NAMES = 6,
517
    VT_MANIFESTS = 8,
518
    VT_SHAPE_V2 = 10
519
  };
520
0
  const flatbuffers::Vector<const generated::DimensionShape *> *shape() const {
521
0
    return GetPointer<const flatbuffers::Vector<const generated::DimensionShape *> *>(VT_SHAPE);
522
0
  }
523
0
  const flatbuffers::Vector<flatbuffers::Offset<generated::DimensionName>> *dimension_names() const {
524
0
    return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::DimensionName>> *>(VT_DIMENSION_NAMES);
525
0
  }
526
0
  const flatbuffers::Vector<flatbuffers::Offset<generated::ManifestRef>> *manifests() const {
527
0
    return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::ManifestRef>> *>(VT_MANIFESTS);
528
0
  }
529
0
  const flatbuffers::Vector<flatbuffers::Offset<generated::DimensionShapeV2>> *shape_v2() const {
530
0
    return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::DimensionShapeV2>> *>(VT_SHAPE_V2);
531
0
  }
532
0
  bool Verify(flatbuffers::Verifier &verifier) const {
533
0
    return VerifyTableStart(verifier) &&
534
0
           VerifyOffsetRequired(verifier, VT_SHAPE) &&
535
0
           verifier.VerifyVector(shape()) &&
536
0
           VerifyOffset(verifier, VT_DIMENSION_NAMES) &&
537
0
           verifier.VerifyVector(dimension_names()) &&
538
0
           verifier.VerifyVectorOfTables(dimension_names()) &&
539
0
           VerifyOffsetRequired(verifier, VT_MANIFESTS) &&
540
0
           verifier.VerifyVector(manifests()) &&
541
0
           verifier.VerifyVectorOfTables(manifests()) &&
542
0
           VerifyOffset(verifier, VT_SHAPE_V2) &&
543
0
           verifier.VerifyVector(shape_v2()) &&
544
0
           verifier.VerifyVectorOfTables(shape_v2()) &&
545
0
           verifier.EndTable();
546
0
  }
547
};
548
549
struct ArrayNodeDataBuilder {
550
  typedef ArrayNodeData Table;
551
  flatbuffers::FlatBufferBuilder &fbb_;
552
  flatbuffers::uoffset_t start_;
553
0
  void add_shape(flatbuffers::Offset<flatbuffers::Vector<const generated::DimensionShape *>> shape) {
554
0
    fbb_.AddOffset(ArrayNodeData::VT_SHAPE, shape);
555
0
  }
556
0
  void add_dimension_names(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::DimensionName>>> dimension_names) {
557
0
    fbb_.AddOffset(ArrayNodeData::VT_DIMENSION_NAMES, dimension_names);
558
0
  }
559
0
  void add_manifests(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::ManifestRef>>> manifests) {
560
0
    fbb_.AddOffset(ArrayNodeData::VT_MANIFESTS, manifests);
561
0
  }
562
0
  void add_shape_v2(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::DimensionShapeV2>>> shape_v2) {
563
0
    fbb_.AddOffset(ArrayNodeData::VT_SHAPE_V2, shape_v2);
564
0
  }
565
  explicit ArrayNodeDataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
566
0
        : fbb_(_fbb) {
567
0
    start_ = fbb_.StartTable();
568
0
  }
569
0
  flatbuffers::Offset<ArrayNodeData> Finish() {
570
0
    const auto end = fbb_.EndTable(start_);
571
0
    auto o = flatbuffers::Offset<ArrayNodeData>(end);
572
0
    fbb_.Required(o, ArrayNodeData::VT_SHAPE);
573
0
    fbb_.Required(o, ArrayNodeData::VT_MANIFESTS);
574
0
    return o;
575
0
  }
576
};
577
578
inline flatbuffers::Offset<ArrayNodeData> CreateArrayNodeData(
579
    flatbuffers::FlatBufferBuilder &_fbb,
580
    flatbuffers::Offset<flatbuffers::Vector<const generated::DimensionShape *>> shape = 0,
581
    flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::DimensionName>>> dimension_names = 0,
582
    flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::ManifestRef>>> manifests = 0,
583
0
    flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::DimensionShapeV2>>> shape_v2 = 0) {
584
0
  ArrayNodeDataBuilder builder_(_fbb);
585
0
  builder_.add_shape_v2(shape_v2);
586
0
  builder_.add_manifests(manifests);
587
0
  builder_.add_dimension_names(dimension_names);
588
0
  builder_.add_shape(shape);
589
0
  return builder_.Finish();
590
0
}
591
592
struct ArrayNodeData::Traits {
593
  using type = ArrayNodeData;
594
  static auto constexpr Create = CreateArrayNodeData;
595
};
596
597
inline flatbuffers::Offset<ArrayNodeData> CreateArrayNodeDataDirect(
598
    flatbuffers::FlatBufferBuilder &_fbb,
599
    const std::vector<generated::DimensionShape> *shape = nullptr,
600
    const std::vector<flatbuffers::Offset<generated::DimensionName>> *dimension_names = nullptr,
601
    const std::vector<flatbuffers::Offset<generated::ManifestRef>> *manifests = nullptr,
602
0
    const std::vector<flatbuffers::Offset<generated::DimensionShapeV2>> *shape_v2 = nullptr) {
603
0
  auto shape__ = shape ? _fbb.CreateVectorOfStructs<generated::DimensionShape>(*shape) : 0;
604
0
  auto dimension_names__ = dimension_names ? _fbb.CreateVector<flatbuffers::Offset<generated::DimensionName>>(*dimension_names) : 0;
605
0
  auto manifests__ = manifests ? _fbb.CreateVector<flatbuffers::Offset<generated::ManifestRef>>(*manifests) : 0;
606
0
  auto shape_v2__ = shape_v2 ? _fbb.CreateVector<flatbuffers::Offset<generated::DimensionShapeV2>>(*shape_v2) : 0;
607
0
  return generated::CreateArrayNodeData(
608
0
      _fbb,
609
0
      shape__,
610
0
      dimension_names__,
611
0
      manifests__,
612
0
      shape_v2__);
613
0
}
614
615
struct NodeSnapshot FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
616
  typedef NodeSnapshotBuilder Builder;
617
  struct Traits;
618
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
619
    VT_ID = 4,
620
    VT_PATH = 6,
621
    VT_USER_DATA = 8,
622
    VT_NODE_DATA_TYPE = 10,
623
    VT_NODE_DATA = 12,
624
    VT_EXTRA = 14
625
  };
626
0
  const generated::ObjectId8 *id() const {
627
0
    return GetStruct<const generated::ObjectId8 *>(VT_ID);
628
0
  }
629
0
  const flatbuffers::String *path() const {
630
0
    return GetPointer<const flatbuffers::String *>(VT_PATH);
631
0
  }
632
0
  const flatbuffers::Vector<uint8_t> *user_data() const {
633
0
    return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_USER_DATA);
634
0
  }
635
0
  generated::NodeData node_data_type() const {
636
0
    return static_cast<generated::NodeData>(GetField<uint8_t>(VT_NODE_DATA_TYPE, 0));
637
0
  }
638
0
  const void *node_data() const {
639
0
    return GetPointer<const void *>(VT_NODE_DATA);
640
0
  }
641
  template<typename T> const T *node_data_as() const;
642
0
  const generated::ArrayNodeData *node_data_as_Array() const {
643
0
    return node_data_type() == generated::NodeData::Array ? static_cast<const generated::ArrayNodeData *>(node_data()) : nullptr;
644
0
  }
645
0
  const generated::GroupNodeData *node_data_as_Group() const {
646
0
    return node_data_type() == generated::NodeData::Group ? static_cast<const generated::GroupNodeData *>(node_data()) : nullptr;
647
0
  }
648
0
  const flatbuffers::Vector<uint8_t> *extra() const {
649
0
    return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_EXTRA);
650
0
  }
651
0
  bool Verify(flatbuffers::Verifier &verifier) const {
652
0
    return VerifyTableStart(verifier) &&
653
0
           VerifyFieldRequired<generated::ObjectId8>(verifier, VT_ID, 1) &&
654
0
           VerifyOffsetRequired(verifier, VT_PATH) &&
655
0
           verifier.VerifyString(path()) &&
656
0
           VerifyOffsetRequired(verifier, VT_USER_DATA) &&
657
0
           verifier.VerifyVector(user_data()) &&
658
0
           VerifyField<uint8_t>(verifier, VT_NODE_DATA_TYPE, 1) &&
659
0
           VerifyOffsetRequired(verifier, VT_NODE_DATA) &&
660
0
           VerifyNodeData(verifier, node_data(), node_data_type()) &&
661
0
           VerifyOffset(verifier, VT_EXTRA) &&
662
0
           verifier.VerifyVector(extra()) &&
663
0
           verifier.EndTable();
664
0
  }
665
};
666
667
0
template<> inline const generated::ArrayNodeData *NodeSnapshot::node_data_as<generated::ArrayNodeData>() const {
668
0
  return node_data_as_Array();
669
0
}
670
671
0
template<> inline const generated::GroupNodeData *NodeSnapshot::node_data_as<generated::GroupNodeData>() const {
672
0
  return node_data_as_Group();
673
0
}
674
675
struct NodeSnapshotBuilder {
676
  typedef NodeSnapshot Table;
677
  flatbuffers::FlatBufferBuilder &fbb_;
678
  flatbuffers::uoffset_t start_;
679
0
  void add_id(const generated::ObjectId8 *id) {
680
0
    fbb_.AddStruct(NodeSnapshot::VT_ID, id);
681
0
  }
682
0
  void add_path(flatbuffers::Offset<flatbuffers::String> path) {
683
0
    fbb_.AddOffset(NodeSnapshot::VT_PATH, path);
684
0
  }
685
0
  void add_user_data(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> user_data) {
686
0
    fbb_.AddOffset(NodeSnapshot::VT_USER_DATA, user_data);
687
0
  }
688
0
  void add_node_data_type(generated::NodeData node_data_type) {
689
0
    fbb_.AddElement<uint8_t>(NodeSnapshot::VT_NODE_DATA_TYPE, static_cast<uint8_t>(node_data_type), 0);
690
0
  }
691
0
  void add_node_data(flatbuffers::Offset<void> node_data) {
692
0
    fbb_.AddOffset(NodeSnapshot::VT_NODE_DATA, node_data);
693
0
  }
694
0
  void add_extra(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra) {
695
0
    fbb_.AddOffset(NodeSnapshot::VT_EXTRA, extra);
696
0
  }
697
  explicit NodeSnapshotBuilder(flatbuffers::FlatBufferBuilder &_fbb)
698
0
        : fbb_(_fbb) {
699
0
    start_ = fbb_.StartTable();
700
0
  }
701
0
  flatbuffers::Offset<NodeSnapshot> Finish() {
702
0
    const auto end = fbb_.EndTable(start_);
703
0
    auto o = flatbuffers::Offset<NodeSnapshot>(end);
704
0
    fbb_.Required(o, NodeSnapshot::VT_ID);
705
0
    fbb_.Required(o, NodeSnapshot::VT_PATH);
706
0
    fbb_.Required(o, NodeSnapshot::VT_USER_DATA);
707
0
    fbb_.Required(o, NodeSnapshot::VT_NODE_DATA);
708
0
    return o;
709
0
  }
710
};
711
712
inline flatbuffers::Offset<NodeSnapshot> CreateNodeSnapshot(
713
    flatbuffers::FlatBufferBuilder &_fbb,
714
    const generated::ObjectId8 *id = nullptr,
715
    flatbuffers::Offset<flatbuffers::String> path = 0,
716
    flatbuffers::Offset<flatbuffers::Vector<uint8_t>> user_data = 0,
717
    generated::NodeData node_data_type = generated::NodeData::NONE,
718
    flatbuffers::Offset<void> node_data = 0,
719
0
    flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra = 0) {
720
0
  NodeSnapshotBuilder builder_(_fbb);
721
0
  builder_.add_extra(extra);
722
0
  builder_.add_node_data(node_data);
723
0
  builder_.add_user_data(user_data);
724
0
  builder_.add_path(path);
725
0
  builder_.add_id(id);
726
0
  builder_.add_node_data_type(node_data_type);
727
0
  return builder_.Finish();
728
0
}
729
730
struct NodeSnapshot::Traits {
731
  using type = NodeSnapshot;
732
  static auto constexpr Create = CreateNodeSnapshot;
733
};
734
735
inline flatbuffers::Offset<NodeSnapshot> CreateNodeSnapshotDirect(
736
    flatbuffers::FlatBufferBuilder &_fbb,
737
    const generated::ObjectId8 *id = nullptr,
738
    const char *path = nullptr,
739
    const std::vector<uint8_t> *user_data = nullptr,
740
    generated::NodeData node_data_type = generated::NodeData::NONE,
741
    flatbuffers::Offset<void> node_data = 0,
742
0
    const std::vector<uint8_t> *extra = nullptr) {
743
0
  auto path__ = path ? _fbb.CreateString(path) : 0;
744
0
  auto user_data__ = user_data ? _fbb.CreateVector<uint8_t>(*user_data) : 0;
745
0
  auto extra__ = extra ? _fbb.CreateVector<uint8_t>(*extra) : 0;
746
0
  return generated::CreateNodeSnapshot(
747
0
      _fbb,
748
0
      id,
749
0
      path__,
750
0
      user_data__,
751
0
      node_data_type,
752
0
      node_data,
753
0
      extra__);
754
0
}
755
756
struct Snapshot FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
757
  typedef SnapshotBuilder Builder;
758
  struct Traits;
759
  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
760
    VT_ID = 4,
761
    VT_PARENT_ID = 6,
762
    VT_NODES = 8,
763
    VT_FLUSHED_AT = 10,
764
    VT_MESSAGE = 12,
765
    VT_METADATA = 14,
766
    VT_MANIFEST_FILES = 16,
767
    VT_MANIFEST_FILES_V2 = 18,
768
    VT_EXTRA = 20
769
  };
770
0
  const generated::ObjectId12 *id() const {
771
0
    return GetStruct<const generated::ObjectId12 *>(VT_ID);
772
0
  }
773
0
  const generated::ObjectId12 *parent_id() const {
774
0
    return GetStruct<const generated::ObjectId12 *>(VT_PARENT_ID);
775
0
  }
776
0
  const flatbuffers::Vector<flatbuffers::Offset<generated::NodeSnapshot>> *nodes() const {
777
0
    return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::NodeSnapshot>> *>(VT_NODES);
778
0
  }
779
0
  uint64_t flushed_at() const {
780
0
    return GetField<uint64_t>(VT_FLUSHED_AT, 0);
781
0
  }
782
0
  const flatbuffers::String *message() const {
783
0
    return GetPointer<const flatbuffers::String *>(VT_MESSAGE);
784
0
  }
785
0
  const flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>> *metadata() const {
786
0
    return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>> *>(VT_METADATA);
787
0
  }
788
0
  const flatbuffers::Vector<const generated::ManifestFileInfo *> *manifest_files() const {
789
0
    return GetPointer<const flatbuffers::Vector<const generated::ManifestFileInfo *> *>(VT_MANIFEST_FILES);
790
0
  }
791
0
  const flatbuffers::Vector<flatbuffers::Offset<generated::ManifestFileInfoV2>> *manifest_files_v2() const {
792
0
    return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::ManifestFileInfoV2>> *>(VT_MANIFEST_FILES_V2);
793
0
  }
794
0
  const flatbuffers::Vector<uint8_t> *extra() const {
795
0
    return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_EXTRA);
796
0
  }
797
0
  bool Verify(flatbuffers::Verifier &verifier) const {
798
0
    return VerifyTableStart(verifier) &&
799
0
           VerifyFieldRequired<generated::ObjectId12>(verifier, VT_ID, 1) &&
800
0
           VerifyField<generated::ObjectId12>(verifier, VT_PARENT_ID, 1) &&
801
0
           VerifyOffsetRequired(verifier, VT_NODES) &&
802
0
           verifier.VerifyVector(nodes()) &&
803
0
           verifier.VerifyVectorOfTables(nodes()) &&
804
0
           VerifyField<uint64_t>(verifier, VT_FLUSHED_AT, 8) &&
805
0
           VerifyOffsetRequired(verifier, VT_MESSAGE) &&
806
0
           verifier.VerifyString(message()) &&
807
0
           VerifyOffsetRequired(verifier, VT_METADATA) &&
808
0
           verifier.VerifyVector(metadata()) &&
809
0
           verifier.VerifyVectorOfTables(metadata()) &&
810
0
           VerifyOffsetRequired(verifier, VT_MANIFEST_FILES) &&
811
0
           verifier.VerifyVector(manifest_files()) &&
812
0
           VerifyOffset(verifier, VT_MANIFEST_FILES_V2) &&
813
0
           verifier.VerifyVector(manifest_files_v2()) &&
814
0
           verifier.VerifyVectorOfTables(manifest_files_v2()) &&
815
0
           VerifyOffset(verifier, VT_EXTRA) &&
816
0
           verifier.VerifyVector(extra()) &&
817
0
           verifier.EndTable();
818
0
  }
819
};
820
821
struct SnapshotBuilder {
822
  typedef Snapshot Table;
823
  flatbuffers::FlatBufferBuilder &fbb_;
824
  flatbuffers::uoffset_t start_;
825
0
  void add_id(const generated::ObjectId12 *id) {
826
0
    fbb_.AddStruct(Snapshot::VT_ID, id);
827
0
  }
828
0
  void add_parent_id(const generated::ObjectId12 *parent_id) {
829
0
    fbb_.AddStruct(Snapshot::VT_PARENT_ID, parent_id);
830
0
  }
831
0
  void add_nodes(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::NodeSnapshot>>> nodes) {
832
0
    fbb_.AddOffset(Snapshot::VT_NODES, nodes);
833
0
  }
834
0
  void add_flushed_at(uint64_t flushed_at) {
835
0
    fbb_.AddElement<uint64_t>(Snapshot::VT_FLUSHED_AT, flushed_at, 0);
836
0
  }
837
0
  void add_message(flatbuffers::Offset<flatbuffers::String> message) {
838
0
    fbb_.AddOffset(Snapshot::VT_MESSAGE, message);
839
0
  }
840
0
  void add_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>>> metadata) {
841
0
    fbb_.AddOffset(Snapshot::VT_METADATA, metadata);
842
0
  }
843
0
  void add_manifest_files(flatbuffers::Offset<flatbuffers::Vector<const generated::ManifestFileInfo *>> manifest_files) {
844
0
    fbb_.AddOffset(Snapshot::VT_MANIFEST_FILES, manifest_files);
845
0
  }
846
0
  void add_manifest_files_v2(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::ManifestFileInfoV2>>> manifest_files_v2) {
847
0
    fbb_.AddOffset(Snapshot::VT_MANIFEST_FILES_V2, manifest_files_v2);
848
0
  }
849
0
  void add_extra(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra) {
850
0
    fbb_.AddOffset(Snapshot::VT_EXTRA, extra);
851
0
  }
852
  explicit SnapshotBuilder(flatbuffers::FlatBufferBuilder &_fbb)
853
0
        : fbb_(_fbb) {
854
0
    start_ = fbb_.StartTable();
855
0
  }
856
0
  flatbuffers::Offset<Snapshot> Finish() {
857
0
    const auto end = fbb_.EndTable(start_);
858
0
    auto o = flatbuffers::Offset<Snapshot>(end);
859
0
    fbb_.Required(o, Snapshot::VT_ID);
860
0
    fbb_.Required(o, Snapshot::VT_NODES);
861
0
    fbb_.Required(o, Snapshot::VT_MESSAGE);
862
0
    fbb_.Required(o, Snapshot::VT_METADATA);
863
0
    fbb_.Required(o, Snapshot::VT_MANIFEST_FILES);
864
0
    return o;
865
0
  }
866
};
867
868
inline flatbuffers::Offset<Snapshot> CreateSnapshot(
869
    flatbuffers::FlatBufferBuilder &_fbb,
870
    const generated::ObjectId12 *id = nullptr,
871
    const generated::ObjectId12 *parent_id = nullptr,
872
    flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::NodeSnapshot>>> nodes = 0,
873
    uint64_t flushed_at = 0,
874
    flatbuffers::Offset<flatbuffers::String> message = 0,
875
    flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>>> metadata = 0,
876
    flatbuffers::Offset<flatbuffers::Vector<const generated::ManifestFileInfo *>> manifest_files = 0,
877
    flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::ManifestFileInfoV2>>> manifest_files_v2 = 0,
878
0
    flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra = 0) {
879
0
  SnapshotBuilder builder_(_fbb);
880
0
  builder_.add_flushed_at(flushed_at);
881
0
  builder_.add_extra(extra);
882
0
  builder_.add_manifest_files_v2(manifest_files_v2);
883
0
  builder_.add_manifest_files(manifest_files);
884
0
  builder_.add_metadata(metadata);
885
0
  builder_.add_message(message);
886
0
  builder_.add_nodes(nodes);
887
0
  builder_.add_parent_id(parent_id);
888
0
  builder_.add_id(id);
889
0
  return builder_.Finish();
890
0
}
891
892
struct Snapshot::Traits {
893
  using type = Snapshot;
894
  static auto constexpr Create = CreateSnapshot;
895
};
896
897
inline flatbuffers::Offset<Snapshot> CreateSnapshotDirect(
898
    flatbuffers::FlatBufferBuilder &_fbb,
899
    const generated::ObjectId12 *id = nullptr,
900
    const generated::ObjectId12 *parent_id = nullptr,
901
    const std::vector<flatbuffers::Offset<generated::NodeSnapshot>> *nodes = nullptr,
902
    uint64_t flushed_at = 0,
903
    const char *message = nullptr,
904
    const std::vector<flatbuffers::Offset<generated::MetadataItem>> *metadata = nullptr,
905
    const std::vector<generated::ManifestFileInfo> *manifest_files = nullptr,
906
    const std::vector<flatbuffers::Offset<generated::ManifestFileInfoV2>> *manifest_files_v2 = nullptr,
907
0
    const std::vector<uint8_t> *extra = nullptr) {
908
0
  auto nodes__ = nodes ? _fbb.CreateVector<flatbuffers::Offset<generated::NodeSnapshot>>(*nodes) : 0;
909
0
  auto message__ = message ? _fbb.CreateString(message) : 0;
910
0
  auto metadata__ = metadata ? _fbb.CreateVector<flatbuffers::Offset<generated::MetadataItem>>(*metadata) : 0;
911
0
  auto manifest_files__ = manifest_files ? _fbb.CreateVectorOfStructs<generated::ManifestFileInfo>(*manifest_files) : 0;
912
0
  auto manifest_files_v2__ = manifest_files_v2 ? _fbb.CreateVector<flatbuffers::Offset<generated::ManifestFileInfoV2>>(*manifest_files_v2) : 0;
913
0
  auto extra__ = extra ? _fbb.CreateVector<uint8_t>(*extra) : 0;
914
0
  return generated::CreateSnapshot(
915
0
      _fbb,
916
0
      id,
917
0
      parent_id,
918
0
      nodes__,
919
0
      flushed_at,
920
0
      message__,
921
0
      metadata__,
922
0
      manifest_files__,
923
0
      manifest_files_v2__,
924
0
      extra__);
925
0
}
926
927
0
inline bool VerifyNodeData(flatbuffers::Verifier &verifier, const void *obj, NodeData type) {
928
0
  switch (type) {
929
0
    case NodeData::NONE: {
930
0
      return true;
931
0
    }
932
0
    case NodeData::Array: {
933
0
      auto ptr = reinterpret_cast<const generated::ArrayNodeData *>(obj);
934
0
      return verifier.VerifyTable(ptr);
935
0
    }
936
0
    case NodeData::Group: {
937
0
      auto ptr = reinterpret_cast<const generated::GroupNodeData *>(obj);
938
0
      return verifier.VerifyTable(ptr);
939
0
    }
940
0
    default: return true;
941
0
  }
942
0
}
943
944
0
inline bool VerifyNodeDataVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<NodeData> *types) {
945
0
  if (!values || !types) return !values && !types;
946
0
  if (values->size() != types->size()) return false;
947
0
  for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
948
0
    if (!VerifyNodeData(
949
0
        verifier,  values->Get(i), types->GetEnum<NodeData>(i))) {
950
0
      return false;
951
0
    }
952
0
  }
953
0
  return true;
954
0
}
955
956
0
inline const generated::Snapshot *GetSnapshot(const void *buf) {
957
0
  return flatbuffers::GetRoot<generated::Snapshot>(buf);
958
0
}
959
960
0
inline const generated::Snapshot *GetSizePrefixedSnapshot(const void *buf) {
961
0
  return flatbuffers::GetSizePrefixedRoot<generated::Snapshot>(buf);
962
0
}
963
964
inline bool VerifySnapshotBuffer(
965
0
    flatbuffers::Verifier &verifier) {
966
0
  return verifier.VerifyBuffer<generated::Snapshot>(nullptr);
967
0
}
968
969
inline bool VerifySizePrefixedSnapshotBuffer(
970
0
    flatbuffers::Verifier &verifier) {
971
0
  return verifier.VerifySizePrefixedBuffer<generated::Snapshot>(nullptr);
972
0
}
973
974
inline void FinishSnapshotBuffer(
975
    flatbuffers::FlatBufferBuilder &fbb,
976
0
    flatbuffers::Offset<generated::Snapshot> root) {
977
0
  fbb.Finish(root);
978
0
}
979
980
inline void FinishSizePrefixedSnapshotBuffer(
981
    flatbuffers::FlatBufferBuilder &fbb,
982
0
    flatbuffers::Offset<generated::Snapshot> root) {
983
0
  fbb.FinishSizePrefixed(root);
984
0
}
985
986
}  // namespace generated
987
988
#endif  // FLATBUFFERS_GENERATED_SNAPSHOT_GENERATED_H_