LCOV - code coverage report
Current view: top level - frmts/icechunk/generated - repo_generated.h (source / functions) Hit Total Coverage
Test: gdal_filtered.info Lines: 179 265 67.5 %
Date: 2026-06-19 21:24:00 Functions: 42 56 75.0 %

          Line data    Source code
       1             : // automatically generated by the FlatBuffers compiler, do not modify
       2             : 
       3             : 
       4             : #ifndef FLATBUFFERS_GENERATED_REPO_GENERATED_H_
       5             : #define FLATBUFFERS_GENERATED_REPO_GENERATED_H_
       6             : 
       7             : #include "flatbuffers/flatbuffers.h"
       8             : #include "flatbuffers/flexbuffers.h"
       9             : #include "flatbuffers/flex_flat_util.h"
      10             : 
      11             : // Ensure the included flatbuffers.h is the same version as when this file was
      12             : // generated, otherwise it may not be compatible.
      13             : static_assert(FLATBUFFERS_VERSION_MAJOR == 2 &&
      14             :               FLATBUFFERS_VERSION_MINOR == 0 &&
      15             :               FLATBUFFERS_VERSION_REVISION == 8,
      16             :              "Non-compatible flatbuffers version included");
      17             : 
      18             : #include "common_generated.h"
      19             : 
      20             : namespace generated {
      21             : 
      22             : struct Ref;
      23             : struct RefBuilder;
      24             : 
      25             : struct SnapshotInfo;
      26             : struct SnapshotInfoBuilder;
      27             : 
      28             : struct RepoStatus;
      29             : struct RepoStatusBuilder;
      30             : 
      31             : struct RepoInitializedUpdate;
      32             : struct RepoInitializedUpdateBuilder;
      33             : 
      34             : struct RepoMigratedUpdate;
      35             : struct RepoMigratedUpdateBuilder;
      36             : 
      37             : struct RepoStatusChangedUpdate;
      38             : struct RepoStatusChangedUpdateBuilder;
      39             : 
      40             : struct ConfigChangedUpdate;
      41             : struct ConfigChangedUpdateBuilder;
      42             : 
      43             : struct MetadataChangedUpdate;
      44             : struct MetadataChangedUpdateBuilder;
      45             : 
      46             : struct TagCreatedUpdate;
      47             : struct TagCreatedUpdateBuilder;
      48             : 
      49             : struct TagDeletedUpdate;
      50             : struct TagDeletedUpdateBuilder;
      51             : 
      52             : struct BranchCreatedUpdate;
      53             : struct BranchCreatedUpdateBuilder;
      54             : 
      55             : struct BranchDeletedUpdate;
      56             : struct BranchDeletedUpdateBuilder;
      57             : 
      58             : struct BranchResetUpdate;
      59             : struct BranchResetUpdateBuilder;
      60             : 
      61             : struct NewCommitUpdate;
      62             : struct NewCommitUpdateBuilder;
      63             : 
      64             : struct CommitAmendedUpdate;
      65             : struct CommitAmendedUpdateBuilder;
      66             : 
      67             : struct NewDetachedSnapshotUpdate;
      68             : struct NewDetachedSnapshotUpdateBuilder;
      69             : 
      70             : struct GCRanUpdate;
      71             : struct GCRanUpdateBuilder;
      72             : 
      73             : struct ExpirationRanUpdate;
      74             : struct ExpirationRanUpdateBuilder;
      75             : 
      76             : struct FeatureFlagChangedUpdate;
      77             : struct FeatureFlagChangedUpdateBuilder;
      78             : 
      79             : struct Update;
      80             : struct UpdateBuilder;
      81             : 
      82             : struct Repo;
      83             : struct RepoBuilder;
      84             : 
      85             : enum class RepoAvailability : uint8_t {
      86             :   Online = 0,
      87             :   ReadOnly = 1,
      88             :   Offline = 2,
      89             :   MIN = Online,
      90             :   MAX = Offline
      91             : };
      92             : 
      93             : inline const RepoAvailability (&EnumValuesRepoAvailability())[3] {
      94             :   static const RepoAvailability values[] = {
      95             :     RepoAvailability::Online,
      96             :     RepoAvailability::ReadOnly,
      97             :     RepoAvailability::Offline
      98             :   };
      99             :   return values;
     100             : }
     101             : 
     102             : inline const char * const *EnumNamesRepoAvailability() {
     103             :   static const char * const names[4] = {
     104             :     "Online",
     105             :     "ReadOnly",
     106             :     "Offline",
     107             :     nullptr
     108             :   };
     109             :   return names;
     110             : }
     111             : 
     112             : inline const char *EnumNameRepoAvailability(RepoAvailability e) {
     113             :   if (flatbuffers::IsOutRange(e, RepoAvailability::Online, RepoAvailability::Offline)) return "";
     114             :   const size_t index = static_cast<size_t>(e);
     115             :   return EnumNamesRepoAvailability()[index];
     116             : }
     117             : 
     118             : enum class UpdateType : uint8_t {
     119             :   NONE = 0,
     120             :   RepoInitializedUpdate = 1,
     121             :   RepoMigratedUpdate = 2,
     122             :   ConfigChangedUpdate = 3,
     123             :   MetadataChangedUpdate = 4,
     124             :   TagCreatedUpdate = 5,
     125             :   TagDeletedUpdate = 6,
     126             :   BranchCreatedUpdate = 7,
     127             :   BranchDeletedUpdate = 8,
     128             :   BranchResetUpdate = 9,
     129             :   NewCommitUpdate = 10,
     130             :   CommitAmendedUpdate = 11,
     131             :   NewDetachedSnapshotUpdate = 12,
     132             :   GCRanUpdate = 13,
     133             :   ExpirationRanUpdate = 14,
     134             :   FeatureFlagChangedUpdate = 15,
     135             :   RepoStatusChangedUpdate = 16,
     136             :   MIN = NONE,
     137             :   MAX = RepoStatusChangedUpdate
     138             : };
     139             : 
     140             : inline const UpdateType (&EnumValuesUpdateType())[17] {
     141             :   static const UpdateType values[] = {
     142             :     UpdateType::NONE,
     143             :     UpdateType::RepoInitializedUpdate,
     144             :     UpdateType::RepoMigratedUpdate,
     145             :     UpdateType::ConfigChangedUpdate,
     146             :     UpdateType::MetadataChangedUpdate,
     147             :     UpdateType::TagCreatedUpdate,
     148             :     UpdateType::TagDeletedUpdate,
     149             :     UpdateType::BranchCreatedUpdate,
     150             :     UpdateType::BranchDeletedUpdate,
     151             :     UpdateType::BranchResetUpdate,
     152             :     UpdateType::NewCommitUpdate,
     153             :     UpdateType::CommitAmendedUpdate,
     154             :     UpdateType::NewDetachedSnapshotUpdate,
     155             :     UpdateType::GCRanUpdate,
     156             :     UpdateType::ExpirationRanUpdate,
     157             :     UpdateType::FeatureFlagChangedUpdate,
     158             :     UpdateType::RepoStatusChangedUpdate
     159             :   };
     160             :   return values;
     161             : }
     162             : 
     163             : inline const char * const *EnumNamesUpdateType() {
     164             :   static const char * const names[18] = {
     165             :     "NONE",
     166             :     "RepoInitializedUpdate",
     167             :     "RepoMigratedUpdate",
     168             :     "ConfigChangedUpdate",
     169             :     "MetadataChangedUpdate",
     170             :     "TagCreatedUpdate",
     171             :     "TagDeletedUpdate",
     172             :     "BranchCreatedUpdate",
     173             :     "BranchDeletedUpdate",
     174             :     "BranchResetUpdate",
     175             :     "NewCommitUpdate",
     176             :     "CommitAmendedUpdate",
     177             :     "NewDetachedSnapshotUpdate",
     178             :     "GCRanUpdate",
     179             :     "ExpirationRanUpdate",
     180             :     "FeatureFlagChangedUpdate",
     181             :     "RepoStatusChangedUpdate",
     182             :     nullptr
     183             :   };
     184             :   return names;
     185             : }
     186             : 
     187             : inline const char *EnumNameUpdateType(UpdateType e) {
     188             :   if (flatbuffers::IsOutRange(e, UpdateType::NONE, UpdateType::RepoStatusChangedUpdate)) return "";
     189             :   const size_t index = static_cast<size_t>(e);
     190             :   return EnumNamesUpdateType()[index];
     191             : }
     192             : 
     193             : template<typename T> struct UpdateTypeTraits {
     194             :   static const UpdateType enum_value = UpdateType::NONE;
     195             : };
     196             : 
     197             : template<> struct UpdateTypeTraits<generated::RepoInitializedUpdate> {
     198             :   static const UpdateType enum_value = UpdateType::RepoInitializedUpdate;
     199             : };
     200             : 
     201             : template<> struct UpdateTypeTraits<generated::RepoMigratedUpdate> {
     202             :   static const UpdateType enum_value = UpdateType::RepoMigratedUpdate;
     203             : };
     204             : 
     205             : template<> struct UpdateTypeTraits<generated::ConfigChangedUpdate> {
     206             :   static const UpdateType enum_value = UpdateType::ConfigChangedUpdate;
     207             : };
     208             : 
     209             : template<> struct UpdateTypeTraits<generated::MetadataChangedUpdate> {
     210             :   static const UpdateType enum_value = UpdateType::MetadataChangedUpdate;
     211             : };
     212             : 
     213             : template<> struct UpdateTypeTraits<generated::TagCreatedUpdate> {
     214             :   static const UpdateType enum_value = UpdateType::TagCreatedUpdate;
     215             : };
     216             : 
     217             : template<> struct UpdateTypeTraits<generated::TagDeletedUpdate> {
     218             :   static const UpdateType enum_value = UpdateType::TagDeletedUpdate;
     219             : };
     220             : 
     221             : template<> struct UpdateTypeTraits<generated::BranchCreatedUpdate> {
     222             :   static const UpdateType enum_value = UpdateType::BranchCreatedUpdate;
     223             : };
     224             : 
     225             : template<> struct UpdateTypeTraits<generated::BranchDeletedUpdate> {
     226             :   static const UpdateType enum_value = UpdateType::BranchDeletedUpdate;
     227             : };
     228             : 
     229             : template<> struct UpdateTypeTraits<generated::BranchResetUpdate> {
     230             :   static const UpdateType enum_value = UpdateType::BranchResetUpdate;
     231             : };
     232             : 
     233             : template<> struct UpdateTypeTraits<generated::NewCommitUpdate> {
     234             :   static const UpdateType enum_value = UpdateType::NewCommitUpdate;
     235             : };
     236             : 
     237             : template<> struct UpdateTypeTraits<generated::CommitAmendedUpdate> {
     238             :   static const UpdateType enum_value = UpdateType::CommitAmendedUpdate;
     239             : };
     240             : 
     241             : template<> struct UpdateTypeTraits<generated::NewDetachedSnapshotUpdate> {
     242             :   static const UpdateType enum_value = UpdateType::NewDetachedSnapshotUpdate;
     243             : };
     244             : 
     245             : template<> struct UpdateTypeTraits<generated::GCRanUpdate> {
     246             :   static const UpdateType enum_value = UpdateType::GCRanUpdate;
     247             : };
     248             : 
     249             : template<> struct UpdateTypeTraits<generated::ExpirationRanUpdate> {
     250             :   static const UpdateType enum_value = UpdateType::ExpirationRanUpdate;
     251             : };
     252             : 
     253             : template<> struct UpdateTypeTraits<generated::FeatureFlagChangedUpdate> {
     254             :   static const UpdateType enum_value = UpdateType::FeatureFlagChangedUpdate;
     255             : };
     256             : 
     257             : template<> struct UpdateTypeTraits<generated::RepoStatusChangedUpdate> {
     258             :   static const UpdateType enum_value = UpdateType::RepoStatusChangedUpdate;
     259             : };
     260             : 
     261             : bool VerifyUpdateType(flatbuffers::Verifier &verifier, const void *obj, UpdateType type);
     262             : bool VerifyUpdateTypeVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<UpdateType> *types);
     263             : 
     264             : struct Ref FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     265             :   typedef RefBuilder Builder;
     266             :   struct Traits;
     267             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     268             :     VT_NAME = 4,
     269             :     VT_SNAPSHOT_INDEX = 6
     270             :   };
     271        4385 :   const flatbuffers::String *name() const {
     272        4385 :     return GetPointer<const flatbuffers::String *>(VT_NAME);
     273             :   }
     274        6573 :   uint32_t snapshot_index() const {
     275        6573 :     return GetField<uint32_t>(VT_SNAPSHOT_INDEX, 0);
     276             :   }
     277        2194 :   bool Verify(flatbuffers::Verifier &verifier) const {
     278        2194 :     return VerifyTableStart(verifier) &&
     279        2194 :            VerifyOffsetRequired(verifier, VT_NAME) &&
     280        2194 :            verifier.VerifyString(name()) &&
     281        6582 :            VerifyField<uint32_t>(verifier, VT_SNAPSHOT_INDEX, 4) &&
     282        4388 :            verifier.EndTable();
     283             :   }
     284             : };
     285             : 
     286             : struct RefBuilder {
     287             :   typedef Ref Table;
     288             :   flatbuffers::FlatBufferBuilder &fbb_;
     289             :   flatbuffers::uoffset_t start_;
     290             :   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
     291             :     fbb_.AddOffset(Ref::VT_NAME, name);
     292             :   }
     293             :   void add_snapshot_index(uint32_t snapshot_index) {
     294             :     fbb_.AddElement<uint32_t>(Ref::VT_SNAPSHOT_INDEX, snapshot_index, 0);
     295             :   }
     296             :   explicit RefBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     297             :         : fbb_(_fbb) {
     298             :     start_ = fbb_.StartTable();
     299             :   }
     300             :   flatbuffers::Offset<Ref> Finish() {
     301             :     const auto end = fbb_.EndTable(start_);
     302             :     auto o = flatbuffers::Offset<Ref>(end);
     303             :     fbb_.Required(o, Ref::VT_NAME);
     304             :     return o;
     305             :   }
     306             : };
     307             : 
     308             : inline flatbuffers::Offset<Ref> CreateRef(
     309             :     flatbuffers::FlatBufferBuilder &_fbb,
     310             :     flatbuffers::Offset<flatbuffers::String> name = 0,
     311             :     uint32_t snapshot_index = 0) {
     312             :   RefBuilder builder_(_fbb);
     313             :   builder_.add_snapshot_index(snapshot_index);
     314             :   builder_.add_name(name);
     315             :   return builder_.Finish();
     316             : }
     317             : 
     318             : struct Ref::Traits {
     319             :   using type = Ref;
     320             :   static auto constexpr Create = CreateRef;
     321             : };
     322             : 
     323             : inline flatbuffers::Offset<Ref> CreateRefDirect(
     324             :     flatbuffers::FlatBufferBuilder &_fbb,
     325             :     const char *name = nullptr,
     326             :     uint32_t snapshot_index = 0) {
     327             :   auto name__ = name ? _fbb.CreateString(name) : 0;
     328             :   return generated::CreateRef(
     329             :       _fbb,
     330             :       name__,
     331             :       snapshot_index);
     332             : }
     333             : 
     334             : struct SnapshotInfo FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     335             :   typedef SnapshotInfoBuilder Builder;
     336             :   struct Traits;
     337             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     338             :     VT_ID = 4,
     339             :     VT_PARENT_OFFSET = 6,
     340             :     VT_FLUSHED_AT = 8,
     341             :     VT_MESSAGE = 10,
     342             :     VT_METADATA = 12
     343             :   };
     344        8323 :   const generated::ObjectId12 *id() const {
     345        8323 :     return GetStruct<const generated::ObjectId12 *>(VT_ID);
     346             :   }
     347        6134 :   int32_t parent_offset() const {
     348        6134 :     return GetField<int32_t>(VT_PARENT_OFFSET, 0);
     349             :   }
     350             :   uint64_t flushed_at() const {
     351             :     return GetField<uint64_t>(VT_FLUSHED_AT, 0);
     352             :   }
     353       12270 :   const flatbuffers::String *message() const {
     354       12270 :     return GetPointer<const flatbuffers::String *>(VT_MESSAGE);
     355             :   }
     356       18406 :   const flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>> *metadata() const {
     357       18406 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>> *>(VT_METADATA);
     358             :   }
     359        6136 :   bool Verify(flatbuffers::Verifier &verifier) const {
     360        6136 :     return VerifyTableStart(verifier) &&
     361        6136 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_ID, 1) &&
     362        6136 :            VerifyField<int32_t>(verifier, VT_PARENT_OFFSET, 4) &&
     363        6136 :            VerifyField<uint64_t>(verifier, VT_FLUSHED_AT, 8) &&
     364        6136 :            VerifyOffsetRequired(verifier, VT_MESSAGE) &&
     365        6136 :            verifier.VerifyString(message()) &&
     366        6136 :            VerifyOffset(verifier, VT_METADATA) &&
     367        6136 :            verifier.VerifyVector(metadata()) &&
     368       18408 :            verifier.VerifyVectorOfTables(metadata()) &&
     369       12272 :            verifier.EndTable();
     370             :   }
     371             : };
     372             : 
     373             : struct SnapshotInfoBuilder {
     374             :   typedef SnapshotInfo Table;
     375             :   flatbuffers::FlatBufferBuilder &fbb_;
     376             :   flatbuffers::uoffset_t start_;
     377             :   void add_id(const generated::ObjectId12 *id) {
     378             :     fbb_.AddStruct(SnapshotInfo::VT_ID, id);
     379             :   }
     380             :   void add_parent_offset(int32_t parent_offset) {
     381             :     fbb_.AddElement<int32_t>(SnapshotInfo::VT_PARENT_OFFSET, parent_offset, 0);
     382             :   }
     383             :   void add_flushed_at(uint64_t flushed_at) {
     384             :     fbb_.AddElement<uint64_t>(SnapshotInfo::VT_FLUSHED_AT, flushed_at, 0);
     385             :   }
     386             :   void add_message(flatbuffers::Offset<flatbuffers::String> message) {
     387             :     fbb_.AddOffset(SnapshotInfo::VT_MESSAGE, message);
     388             :   }
     389             :   void add_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>>> metadata) {
     390             :     fbb_.AddOffset(SnapshotInfo::VT_METADATA, metadata);
     391             :   }
     392             :   explicit SnapshotInfoBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     393             :         : fbb_(_fbb) {
     394             :     start_ = fbb_.StartTable();
     395             :   }
     396             :   flatbuffers::Offset<SnapshotInfo> Finish() {
     397             :     const auto end = fbb_.EndTable(start_);
     398             :     auto o = flatbuffers::Offset<SnapshotInfo>(end);
     399             :     fbb_.Required(o, SnapshotInfo::VT_ID);
     400             :     fbb_.Required(o, SnapshotInfo::VT_MESSAGE);
     401             :     return o;
     402             :   }
     403             : };
     404             : 
     405             : inline flatbuffers::Offset<SnapshotInfo> CreateSnapshotInfo(
     406             :     flatbuffers::FlatBufferBuilder &_fbb,
     407             :     const generated::ObjectId12 *id = nullptr,
     408             :     int32_t parent_offset = 0,
     409             :     uint64_t flushed_at = 0,
     410             :     flatbuffers::Offset<flatbuffers::String> message = 0,
     411             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>>> metadata = 0) {
     412             :   SnapshotInfoBuilder builder_(_fbb);
     413             :   builder_.add_flushed_at(flushed_at);
     414             :   builder_.add_metadata(metadata);
     415             :   builder_.add_message(message);
     416             :   builder_.add_parent_offset(parent_offset);
     417             :   builder_.add_id(id);
     418             :   return builder_.Finish();
     419             : }
     420             : 
     421             : struct SnapshotInfo::Traits {
     422             :   using type = SnapshotInfo;
     423             :   static auto constexpr Create = CreateSnapshotInfo;
     424             : };
     425             : 
     426             : inline flatbuffers::Offset<SnapshotInfo> CreateSnapshotInfoDirect(
     427             :     flatbuffers::FlatBufferBuilder &_fbb,
     428             :     const generated::ObjectId12 *id = nullptr,
     429             :     int32_t parent_offset = 0,
     430             :     uint64_t flushed_at = 0,
     431             :     const char *message = nullptr,
     432             :     const std::vector<flatbuffers::Offset<generated::MetadataItem>> *metadata = nullptr) {
     433             :   auto message__ = message ? _fbb.CreateString(message) : 0;
     434             :   auto metadata__ = metadata ? _fbb.CreateVector<flatbuffers::Offset<generated::MetadataItem>>(*metadata) : 0;
     435             :   return generated::CreateSnapshotInfo(
     436             :       _fbb,
     437             :       id,
     438             :       parent_offset,
     439             :       flushed_at,
     440             :       message__,
     441             :       metadata__);
     442             : }
     443             : 
     444             : struct RepoStatus FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     445             :   typedef RepoStatusBuilder Builder;
     446             :   struct Traits;
     447             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     448             :     VT_AVAILABILITY = 4,
     449             :     VT_SET_AT = 6,
     450             :     VT_LIMITED_AVAILABILITY_REASON = 8
     451             :   };
     452        2192 :   generated::RepoAvailability availability() const {
     453        2192 :     return static_cast<generated::RepoAvailability>(GetField<uint8_t>(VT_AVAILABILITY, 0));
     454             :   }
     455             :   uint64_t set_at() const {
     456             :     return GetField<uint64_t>(VT_SET_AT, 0);
     457             :   }
     458        2195 :   const flatbuffers::String *limited_availability_reason() const {
     459        2195 :     return GetPointer<const flatbuffers::String *>(VT_LIMITED_AVAILABILITY_REASON);
     460             :   }
     461        2194 :   bool Verify(flatbuffers::Verifier &verifier) const {
     462        2194 :     return VerifyTableStart(verifier) &&
     463        2194 :            VerifyField<uint8_t>(verifier, VT_AVAILABILITY, 1) &&
     464        2194 :            VerifyField<uint64_t>(verifier, VT_SET_AT, 8) &&
     465        2194 :            VerifyOffset(verifier, VT_LIMITED_AVAILABILITY_REASON) &&
     466        6582 :            verifier.VerifyString(limited_availability_reason()) &&
     467        4388 :            verifier.EndTable();
     468             :   }
     469             : };
     470             : 
     471             : struct RepoStatusBuilder {
     472             :   typedef RepoStatus Table;
     473             :   flatbuffers::FlatBufferBuilder &fbb_;
     474             :   flatbuffers::uoffset_t start_;
     475             :   void add_availability(generated::RepoAvailability availability) {
     476             :     fbb_.AddElement<uint8_t>(RepoStatus::VT_AVAILABILITY, static_cast<uint8_t>(availability), 0);
     477             :   }
     478             :   void add_set_at(uint64_t set_at) {
     479             :     fbb_.AddElement<uint64_t>(RepoStatus::VT_SET_AT, set_at, 0);
     480             :   }
     481             :   void add_limited_availability_reason(flatbuffers::Offset<flatbuffers::String> limited_availability_reason) {
     482             :     fbb_.AddOffset(RepoStatus::VT_LIMITED_AVAILABILITY_REASON, limited_availability_reason);
     483             :   }
     484             :   explicit RepoStatusBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     485             :         : fbb_(_fbb) {
     486             :     start_ = fbb_.StartTable();
     487             :   }
     488             :   flatbuffers::Offset<RepoStatus> Finish() {
     489             :     const auto end = fbb_.EndTable(start_);
     490             :     auto o = flatbuffers::Offset<RepoStatus>(end);
     491             :     return o;
     492             :   }
     493             : };
     494             : 
     495             : inline flatbuffers::Offset<RepoStatus> CreateRepoStatus(
     496             :     flatbuffers::FlatBufferBuilder &_fbb,
     497             :     generated::RepoAvailability availability = generated::RepoAvailability::Online,
     498             :     uint64_t set_at = 0,
     499             :     flatbuffers::Offset<flatbuffers::String> limited_availability_reason = 0) {
     500             :   RepoStatusBuilder builder_(_fbb);
     501             :   builder_.add_set_at(set_at);
     502             :   builder_.add_limited_availability_reason(limited_availability_reason);
     503             :   builder_.add_availability(availability);
     504             :   return builder_.Finish();
     505             : }
     506             : 
     507             : struct RepoStatus::Traits {
     508             :   using type = RepoStatus;
     509             :   static auto constexpr Create = CreateRepoStatus;
     510             : };
     511             : 
     512             : inline flatbuffers::Offset<RepoStatus> CreateRepoStatusDirect(
     513             :     flatbuffers::FlatBufferBuilder &_fbb,
     514             :     generated::RepoAvailability availability = generated::RepoAvailability::Online,
     515             :     uint64_t set_at = 0,
     516             :     const char *limited_availability_reason = nullptr) {
     517             :   auto limited_availability_reason__ = limited_availability_reason ? _fbb.CreateString(limited_availability_reason) : 0;
     518             :   return generated::CreateRepoStatus(
     519             :       _fbb,
     520             :       availability,
     521             :       set_at,
     522             :       limited_availability_reason__);
     523             : }
     524             : 
     525             : struct RepoInitializedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     526             :   typedef RepoInitializedUpdateBuilder Builder;
     527             :   struct Traits;
     528        2123 :   bool Verify(flatbuffers::Verifier &verifier) const {
     529        4246 :     return VerifyTableStart(verifier) &&
     530        4246 :            verifier.EndTable();
     531             :   }
     532             : };
     533             : 
     534             : struct RepoInitializedUpdateBuilder {
     535             :   typedef RepoInitializedUpdate Table;
     536             :   flatbuffers::FlatBufferBuilder &fbb_;
     537             :   flatbuffers::uoffset_t start_;
     538             :   explicit RepoInitializedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     539             :         : fbb_(_fbb) {
     540             :     start_ = fbb_.StartTable();
     541             :   }
     542             :   flatbuffers::Offset<RepoInitializedUpdate> Finish() {
     543             :     const auto end = fbb_.EndTable(start_);
     544             :     auto o = flatbuffers::Offset<RepoInitializedUpdate>(end);
     545             :     return o;
     546             :   }
     547             : };
     548             : 
     549             : inline flatbuffers::Offset<RepoInitializedUpdate> CreateRepoInitializedUpdate(
     550             :     flatbuffers::FlatBufferBuilder &_fbb) {
     551             :   RepoInitializedUpdateBuilder builder_(_fbb);
     552             :   return builder_.Finish();
     553             : }
     554             : 
     555             : struct RepoInitializedUpdate::Traits {
     556             :   using type = RepoInitializedUpdate;
     557             :   static auto constexpr Create = CreateRepoInitializedUpdate;
     558             : };
     559             : 
     560             : struct RepoMigratedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     561             :   typedef RepoMigratedUpdateBuilder Builder;
     562             :   struct Traits;
     563             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     564             :     VT_FROM_VERSION = 4,
     565             :     VT_TO_VERSION = 6
     566             :   };
     567             :   uint8_t from_version() const {
     568             :     return GetField<uint8_t>(VT_FROM_VERSION, 0);
     569             :   }
     570             :   uint8_t to_version() const {
     571             :     return GetField<uint8_t>(VT_TO_VERSION, 0);
     572             :   }
     573           2 :   bool Verify(flatbuffers::Verifier &verifier) const {
     574           2 :     return VerifyTableStart(verifier) &&
     575           2 :            VerifyField<uint8_t>(verifier, VT_FROM_VERSION, 1) &&
     576           6 :            VerifyField<uint8_t>(verifier, VT_TO_VERSION, 1) &&
     577           4 :            verifier.EndTable();
     578             :   }
     579             : };
     580             : 
     581             : struct RepoMigratedUpdateBuilder {
     582             :   typedef RepoMigratedUpdate Table;
     583             :   flatbuffers::FlatBufferBuilder &fbb_;
     584             :   flatbuffers::uoffset_t start_;
     585             :   void add_from_version(uint8_t from_version) {
     586             :     fbb_.AddElement<uint8_t>(RepoMigratedUpdate::VT_FROM_VERSION, from_version, 0);
     587             :   }
     588             :   void add_to_version(uint8_t to_version) {
     589             :     fbb_.AddElement<uint8_t>(RepoMigratedUpdate::VT_TO_VERSION, to_version, 0);
     590             :   }
     591             :   explicit RepoMigratedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     592             :         : fbb_(_fbb) {
     593             :     start_ = fbb_.StartTable();
     594             :   }
     595             :   flatbuffers::Offset<RepoMigratedUpdate> Finish() {
     596             :     const auto end = fbb_.EndTable(start_);
     597             :     auto o = flatbuffers::Offset<RepoMigratedUpdate>(end);
     598             :     return o;
     599             :   }
     600             : };
     601             : 
     602             : inline flatbuffers::Offset<RepoMigratedUpdate> CreateRepoMigratedUpdate(
     603             :     flatbuffers::FlatBufferBuilder &_fbb,
     604             :     uint8_t from_version = 0,
     605             :     uint8_t to_version = 0) {
     606             :   RepoMigratedUpdateBuilder builder_(_fbb);
     607             :   builder_.add_to_version(to_version);
     608             :   builder_.add_from_version(from_version);
     609             :   return builder_.Finish();
     610             : }
     611             : 
     612             : struct RepoMigratedUpdate::Traits {
     613             :   using type = RepoMigratedUpdate;
     614             :   static auto constexpr Create = CreateRepoMigratedUpdate;
     615             : };
     616             : 
     617             : struct RepoStatusChangedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     618             :   typedef RepoStatusChangedUpdateBuilder Builder;
     619             :   struct Traits;
     620             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     621             :     VT_STATUS = 4
     622             :   };
     623           0 :   const generated::RepoStatus *status() const {
     624           0 :     return GetPointer<const generated::RepoStatus *>(VT_STATUS);
     625             :   }
     626           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
     627           0 :     return VerifyTableStart(verifier) &&
     628           0 :            VerifyOffset(verifier, VT_STATUS) &&
     629           0 :            verifier.VerifyTable(status()) &&
     630           0 :            verifier.EndTable();
     631             :   }
     632             : };
     633             : 
     634             : struct RepoStatusChangedUpdateBuilder {
     635             :   typedef RepoStatusChangedUpdate Table;
     636             :   flatbuffers::FlatBufferBuilder &fbb_;
     637             :   flatbuffers::uoffset_t start_;
     638             :   void add_status(flatbuffers::Offset<generated::RepoStatus> status) {
     639             :     fbb_.AddOffset(RepoStatusChangedUpdate::VT_STATUS, status);
     640             :   }
     641             :   explicit RepoStatusChangedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     642             :         : fbb_(_fbb) {
     643             :     start_ = fbb_.StartTable();
     644             :   }
     645             :   flatbuffers::Offset<RepoStatusChangedUpdate> Finish() {
     646             :     const auto end = fbb_.EndTable(start_);
     647             :     auto o = flatbuffers::Offset<RepoStatusChangedUpdate>(end);
     648             :     return o;
     649             :   }
     650             : };
     651             : 
     652             : inline flatbuffers::Offset<RepoStatusChangedUpdate> CreateRepoStatusChangedUpdate(
     653             :     flatbuffers::FlatBufferBuilder &_fbb,
     654             :     flatbuffers::Offset<generated::RepoStatus> status = 0) {
     655             :   RepoStatusChangedUpdateBuilder builder_(_fbb);
     656             :   builder_.add_status(status);
     657             :   return builder_.Finish();
     658             : }
     659             : 
     660             : struct RepoStatusChangedUpdate::Traits {
     661             :   using type = RepoStatusChangedUpdate;
     662             :   static auto constexpr Create = CreateRepoStatusChangedUpdate;
     663             : };
     664             : 
     665             : struct ConfigChangedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     666             :   typedef ConfigChangedUpdateBuilder Builder;
     667             :   struct Traits;
     668           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
     669           0 :     return VerifyTableStart(verifier) &&
     670           0 :            verifier.EndTable();
     671             :   }
     672             : };
     673             : 
     674             : struct ConfigChangedUpdateBuilder {
     675             :   typedef ConfigChangedUpdate Table;
     676             :   flatbuffers::FlatBufferBuilder &fbb_;
     677             :   flatbuffers::uoffset_t start_;
     678             :   explicit ConfigChangedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     679             :         : fbb_(_fbb) {
     680             :     start_ = fbb_.StartTable();
     681             :   }
     682             :   flatbuffers::Offset<ConfigChangedUpdate> Finish() {
     683             :     const auto end = fbb_.EndTable(start_);
     684             :     auto o = flatbuffers::Offset<ConfigChangedUpdate>(end);
     685             :     return o;
     686             :   }
     687             : };
     688             : 
     689             : inline flatbuffers::Offset<ConfigChangedUpdate> CreateConfigChangedUpdate(
     690             :     flatbuffers::FlatBufferBuilder &_fbb) {
     691             :   ConfigChangedUpdateBuilder builder_(_fbb);
     692             :   return builder_.Finish();
     693             : }
     694             : 
     695             : struct ConfigChangedUpdate::Traits {
     696             :   using type = ConfigChangedUpdate;
     697             :   static auto constexpr Create = CreateConfigChangedUpdate;
     698             : };
     699             : 
     700             : struct MetadataChangedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     701             :   typedef MetadataChangedUpdateBuilder Builder;
     702             :   struct Traits;
     703           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
     704           0 :     return VerifyTableStart(verifier) &&
     705           0 :            verifier.EndTable();
     706             :   }
     707             : };
     708             : 
     709             : struct MetadataChangedUpdateBuilder {
     710             :   typedef MetadataChangedUpdate Table;
     711             :   flatbuffers::FlatBufferBuilder &fbb_;
     712             :   flatbuffers::uoffset_t start_;
     713             :   explicit MetadataChangedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     714             :         : fbb_(_fbb) {
     715             :     start_ = fbb_.StartTable();
     716             :   }
     717             :   flatbuffers::Offset<MetadataChangedUpdate> Finish() {
     718             :     const auto end = fbb_.EndTable(start_);
     719             :     auto o = flatbuffers::Offset<MetadataChangedUpdate>(end);
     720             :     return o;
     721             :   }
     722             : };
     723             : 
     724             : inline flatbuffers::Offset<MetadataChangedUpdate> CreateMetadataChangedUpdate(
     725             :     flatbuffers::FlatBufferBuilder &_fbb) {
     726             :   MetadataChangedUpdateBuilder builder_(_fbb);
     727             :   return builder_.Finish();
     728             : }
     729             : 
     730             : struct MetadataChangedUpdate::Traits {
     731             :   using type = MetadataChangedUpdate;
     732             :   static auto constexpr Create = CreateMetadataChangedUpdate;
     733             : };
     734             : 
     735             : struct TagCreatedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     736             :   typedef TagCreatedUpdateBuilder Builder;
     737             :   struct Traits;
     738             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     739             :     VT_NAME = 4
     740             :   };
     741           0 :   const flatbuffers::String *name() const {
     742           0 :     return GetPointer<const flatbuffers::String *>(VT_NAME);
     743             :   }
     744           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
     745           0 :     return VerifyTableStart(verifier) &&
     746           0 :            VerifyOffsetRequired(verifier, VT_NAME) &&
     747           0 :            verifier.VerifyString(name()) &&
     748           0 :            verifier.EndTable();
     749             :   }
     750             : };
     751             : 
     752             : struct TagCreatedUpdateBuilder {
     753             :   typedef TagCreatedUpdate Table;
     754             :   flatbuffers::FlatBufferBuilder &fbb_;
     755             :   flatbuffers::uoffset_t start_;
     756             :   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
     757             :     fbb_.AddOffset(TagCreatedUpdate::VT_NAME, name);
     758             :   }
     759             :   explicit TagCreatedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     760             :         : fbb_(_fbb) {
     761             :     start_ = fbb_.StartTable();
     762             :   }
     763             :   flatbuffers::Offset<TagCreatedUpdate> Finish() {
     764             :     const auto end = fbb_.EndTable(start_);
     765             :     auto o = flatbuffers::Offset<TagCreatedUpdate>(end);
     766             :     fbb_.Required(o, TagCreatedUpdate::VT_NAME);
     767             :     return o;
     768             :   }
     769             : };
     770             : 
     771             : inline flatbuffers::Offset<TagCreatedUpdate> CreateTagCreatedUpdate(
     772             :     flatbuffers::FlatBufferBuilder &_fbb,
     773             :     flatbuffers::Offset<flatbuffers::String> name = 0) {
     774             :   TagCreatedUpdateBuilder builder_(_fbb);
     775             :   builder_.add_name(name);
     776             :   return builder_.Finish();
     777             : }
     778             : 
     779             : struct TagCreatedUpdate::Traits {
     780             :   using type = TagCreatedUpdate;
     781             :   static auto constexpr Create = CreateTagCreatedUpdate;
     782             : };
     783             : 
     784             : inline flatbuffers::Offset<TagCreatedUpdate> CreateTagCreatedUpdateDirect(
     785             :     flatbuffers::FlatBufferBuilder &_fbb,
     786             :     const char *name = nullptr) {
     787             :   auto name__ = name ? _fbb.CreateString(name) : 0;
     788             :   return generated::CreateTagCreatedUpdate(
     789             :       _fbb,
     790             :       name__);
     791             : }
     792             : 
     793             : struct TagDeletedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     794             :   typedef TagDeletedUpdateBuilder Builder;
     795             :   struct Traits;
     796             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     797             :     VT_NAME = 4,
     798             :     VT_PREVIOUS_SNAP_ID = 6
     799             :   };
     800           0 :   const flatbuffers::String *name() const {
     801           0 :     return GetPointer<const flatbuffers::String *>(VT_NAME);
     802             :   }
     803             :   const generated::ObjectId12 *previous_snap_id() const {
     804             :     return GetStruct<const generated::ObjectId12 *>(VT_PREVIOUS_SNAP_ID);
     805             :   }
     806           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
     807           0 :     return VerifyTableStart(verifier) &&
     808           0 :            VerifyOffsetRequired(verifier, VT_NAME) &&
     809           0 :            verifier.VerifyString(name()) &&
     810           0 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_PREVIOUS_SNAP_ID, 1) &&
     811           0 :            verifier.EndTable();
     812             :   }
     813             : };
     814             : 
     815             : struct TagDeletedUpdateBuilder {
     816             :   typedef TagDeletedUpdate Table;
     817             :   flatbuffers::FlatBufferBuilder &fbb_;
     818             :   flatbuffers::uoffset_t start_;
     819             :   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
     820             :     fbb_.AddOffset(TagDeletedUpdate::VT_NAME, name);
     821             :   }
     822             :   void add_previous_snap_id(const generated::ObjectId12 *previous_snap_id) {
     823             :     fbb_.AddStruct(TagDeletedUpdate::VT_PREVIOUS_SNAP_ID, previous_snap_id);
     824             :   }
     825             :   explicit TagDeletedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     826             :         : fbb_(_fbb) {
     827             :     start_ = fbb_.StartTable();
     828             :   }
     829             :   flatbuffers::Offset<TagDeletedUpdate> Finish() {
     830             :     const auto end = fbb_.EndTable(start_);
     831             :     auto o = flatbuffers::Offset<TagDeletedUpdate>(end);
     832             :     fbb_.Required(o, TagDeletedUpdate::VT_NAME);
     833             :     fbb_.Required(o, TagDeletedUpdate::VT_PREVIOUS_SNAP_ID);
     834             :     return o;
     835             :   }
     836             : };
     837             : 
     838             : inline flatbuffers::Offset<TagDeletedUpdate> CreateTagDeletedUpdate(
     839             :     flatbuffers::FlatBufferBuilder &_fbb,
     840             :     flatbuffers::Offset<flatbuffers::String> name = 0,
     841             :     const generated::ObjectId12 *previous_snap_id = nullptr) {
     842             :   TagDeletedUpdateBuilder builder_(_fbb);
     843             :   builder_.add_previous_snap_id(previous_snap_id);
     844             :   builder_.add_name(name);
     845             :   return builder_.Finish();
     846             : }
     847             : 
     848             : struct TagDeletedUpdate::Traits {
     849             :   using type = TagDeletedUpdate;
     850             :   static auto constexpr Create = CreateTagDeletedUpdate;
     851             : };
     852             : 
     853             : inline flatbuffers::Offset<TagDeletedUpdate> CreateTagDeletedUpdateDirect(
     854             :     flatbuffers::FlatBufferBuilder &_fbb,
     855             :     const char *name = nullptr,
     856             :     const generated::ObjectId12 *previous_snap_id = nullptr) {
     857             :   auto name__ = name ? _fbb.CreateString(name) : 0;
     858             :   return generated::CreateTagDeletedUpdate(
     859             :       _fbb,
     860             :       name__,
     861             :       previous_snap_id);
     862             : }
     863             : 
     864             : struct BranchCreatedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     865             :   typedef BranchCreatedUpdateBuilder Builder;
     866             :   struct Traits;
     867             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     868             :     VT_NAME = 4
     869             :   };
     870         284 :   const flatbuffers::String *name() const {
     871         284 :     return GetPointer<const flatbuffers::String *>(VT_NAME);
     872             :   }
     873         284 :   bool Verify(flatbuffers::Verifier &verifier) const {
     874         284 :     return VerifyTableStart(verifier) &&
     875         284 :            VerifyOffsetRequired(verifier, VT_NAME) &&
     876         852 :            verifier.VerifyString(name()) &&
     877         568 :            verifier.EndTable();
     878             :   }
     879             : };
     880             : 
     881             : struct BranchCreatedUpdateBuilder {
     882             :   typedef BranchCreatedUpdate Table;
     883             :   flatbuffers::FlatBufferBuilder &fbb_;
     884             :   flatbuffers::uoffset_t start_;
     885             :   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
     886             :     fbb_.AddOffset(BranchCreatedUpdate::VT_NAME, name);
     887             :   }
     888             :   explicit BranchCreatedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     889             :         : fbb_(_fbb) {
     890             :     start_ = fbb_.StartTable();
     891             :   }
     892             :   flatbuffers::Offset<BranchCreatedUpdate> Finish() {
     893             :     const auto end = fbb_.EndTable(start_);
     894             :     auto o = flatbuffers::Offset<BranchCreatedUpdate>(end);
     895             :     fbb_.Required(o, BranchCreatedUpdate::VT_NAME);
     896             :     return o;
     897             :   }
     898             : };
     899             : 
     900             : inline flatbuffers::Offset<BranchCreatedUpdate> CreateBranchCreatedUpdate(
     901             :     flatbuffers::FlatBufferBuilder &_fbb,
     902             :     flatbuffers::Offset<flatbuffers::String> name = 0) {
     903             :   BranchCreatedUpdateBuilder builder_(_fbb);
     904             :   builder_.add_name(name);
     905             :   return builder_.Finish();
     906             : }
     907             : 
     908             : struct BranchCreatedUpdate::Traits {
     909             :   using type = BranchCreatedUpdate;
     910             :   static auto constexpr Create = CreateBranchCreatedUpdate;
     911             : };
     912             : 
     913             : inline flatbuffers::Offset<BranchCreatedUpdate> CreateBranchCreatedUpdateDirect(
     914             :     flatbuffers::FlatBufferBuilder &_fbb,
     915             :     const char *name = nullptr) {
     916             :   auto name__ = name ? _fbb.CreateString(name) : 0;
     917             :   return generated::CreateBranchCreatedUpdate(
     918             :       _fbb,
     919             :       name__);
     920             : }
     921             : 
     922             : struct BranchDeletedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     923             :   typedef BranchDeletedUpdateBuilder Builder;
     924             :   struct Traits;
     925             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     926             :     VT_NAME = 4,
     927             :     VT_PREVIOUS_SNAP_ID = 6
     928             :   };
     929         286 :   const flatbuffers::String *name() const {
     930         286 :     return GetPointer<const flatbuffers::String *>(VT_NAME);
     931             :   }
     932             :   const generated::ObjectId12 *previous_snap_id() const {
     933             :     return GetStruct<const generated::ObjectId12 *>(VT_PREVIOUS_SNAP_ID);
     934             :   }
     935         286 :   bool Verify(flatbuffers::Verifier &verifier) const {
     936         286 :     return VerifyTableStart(verifier) &&
     937         286 :            VerifyOffsetRequired(verifier, VT_NAME) &&
     938         286 :            verifier.VerifyString(name()) &&
     939         858 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_PREVIOUS_SNAP_ID, 1) &&
     940         572 :            verifier.EndTable();
     941             :   }
     942             : };
     943             : 
     944             : struct BranchDeletedUpdateBuilder {
     945             :   typedef BranchDeletedUpdate Table;
     946             :   flatbuffers::FlatBufferBuilder &fbb_;
     947             :   flatbuffers::uoffset_t start_;
     948             :   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
     949             :     fbb_.AddOffset(BranchDeletedUpdate::VT_NAME, name);
     950             :   }
     951             :   void add_previous_snap_id(const generated::ObjectId12 *previous_snap_id) {
     952             :     fbb_.AddStruct(BranchDeletedUpdate::VT_PREVIOUS_SNAP_ID, previous_snap_id);
     953             :   }
     954             :   explicit BranchDeletedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
     955             :         : fbb_(_fbb) {
     956             :     start_ = fbb_.StartTable();
     957             :   }
     958             :   flatbuffers::Offset<BranchDeletedUpdate> Finish() {
     959             :     const auto end = fbb_.EndTable(start_);
     960             :     auto o = flatbuffers::Offset<BranchDeletedUpdate>(end);
     961             :     fbb_.Required(o, BranchDeletedUpdate::VT_NAME);
     962             :     fbb_.Required(o, BranchDeletedUpdate::VT_PREVIOUS_SNAP_ID);
     963             :     return o;
     964             :   }
     965             : };
     966             : 
     967             : inline flatbuffers::Offset<BranchDeletedUpdate> CreateBranchDeletedUpdate(
     968             :     flatbuffers::FlatBufferBuilder &_fbb,
     969             :     flatbuffers::Offset<flatbuffers::String> name = 0,
     970             :     const generated::ObjectId12 *previous_snap_id = nullptr) {
     971             :   BranchDeletedUpdateBuilder builder_(_fbb);
     972             :   builder_.add_previous_snap_id(previous_snap_id);
     973             :   builder_.add_name(name);
     974             :   return builder_.Finish();
     975             : }
     976             : 
     977             : struct BranchDeletedUpdate::Traits {
     978             :   using type = BranchDeletedUpdate;
     979             :   static auto constexpr Create = CreateBranchDeletedUpdate;
     980             : };
     981             : 
     982             : inline flatbuffers::Offset<BranchDeletedUpdate> CreateBranchDeletedUpdateDirect(
     983             :     flatbuffers::FlatBufferBuilder &_fbb,
     984             :     const char *name = nullptr,
     985             :     const generated::ObjectId12 *previous_snap_id = nullptr) {
     986             :   auto name__ = name ? _fbb.CreateString(name) : 0;
     987             :   return generated::CreateBranchDeletedUpdate(
     988             :       _fbb,
     989             :       name__,
     990             :       previous_snap_id);
     991             : }
     992             : 
     993             : struct BranchResetUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
     994             :   typedef BranchResetUpdateBuilder Builder;
     995             :   struct Traits;
     996             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
     997             :     VT_NAME = 4,
     998             :     VT_PREVIOUS_SNAP_ID = 6
     999             :   };
    1000         286 :   const flatbuffers::String *name() const {
    1001         286 :     return GetPointer<const flatbuffers::String *>(VT_NAME);
    1002             :   }
    1003             :   const generated::ObjectId12 *previous_snap_id() const {
    1004             :     return GetStruct<const generated::ObjectId12 *>(VT_PREVIOUS_SNAP_ID);
    1005             :   }
    1006         286 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1007         286 :     return VerifyTableStart(verifier) &&
    1008         286 :            VerifyOffsetRequired(verifier, VT_NAME) &&
    1009         286 :            verifier.VerifyString(name()) &&
    1010         858 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_PREVIOUS_SNAP_ID, 1) &&
    1011         572 :            verifier.EndTable();
    1012             :   }
    1013             : };
    1014             : 
    1015             : struct BranchResetUpdateBuilder {
    1016             :   typedef BranchResetUpdate Table;
    1017             :   flatbuffers::FlatBufferBuilder &fbb_;
    1018             :   flatbuffers::uoffset_t start_;
    1019             :   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
    1020             :     fbb_.AddOffset(BranchResetUpdate::VT_NAME, name);
    1021             :   }
    1022             :   void add_previous_snap_id(const generated::ObjectId12 *previous_snap_id) {
    1023             :     fbb_.AddStruct(BranchResetUpdate::VT_PREVIOUS_SNAP_ID, previous_snap_id);
    1024             :   }
    1025             :   explicit BranchResetUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1026             :         : fbb_(_fbb) {
    1027             :     start_ = fbb_.StartTable();
    1028             :   }
    1029             :   flatbuffers::Offset<BranchResetUpdate> Finish() {
    1030             :     const auto end = fbb_.EndTable(start_);
    1031             :     auto o = flatbuffers::Offset<BranchResetUpdate>(end);
    1032             :     fbb_.Required(o, BranchResetUpdate::VT_NAME);
    1033             :     fbb_.Required(o, BranchResetUpdate::VT_PREVIOUS_SNAP_ID);
    1034             :     return o;
    1035             :   }
    1036             : };
    1037             : 
    1038             : inline flatbuffers::Offset<BranchResetUpdate> CreateBranchResetUpdate(
    1039             :     flatbuffers::FlatBufferBuilder &_fbb,
    1040             :     flatbuffers::Offset<flatbuffers::String> name = 0,
    1041             :     const generated::ObjectId12 *previous_snap_id = nullptr) {
    1042             :   BranchResetUpdateBuilder builder_(_fbb);
    1043             :   builder_.add_previous_snap_id(previous_snap_id);
    1044             :   builder_.add_name(name);
    1045             :   return builder_.Finish();
    1046             : }
    1047             : 
    1048             : struct BranchResetUpdate::Traits {
    1049             :   using type = BranchResetUpdate;
    1050             :   static auto constexpr Create = CreateBranchResetUpdate;
    1051             : };
    1052             : 
    1053             : inline flatbuffers::Offset<BranchResetUpdate> CreateBranchResetUpdateDirect(
    1054             :     flatbuffers::FlatBufferBuilder &_fbb,
    1055             :     const char *name = nullptr,
    1056             :     const generated::ObjectId12 *previous_snap_id = nullptr) {
    1057             :   auto name__ = name ? _fbb.CreateString(name) : 0;
    1058             :   return generated::CreateBranchResetUpdate(
    1059             :       _fbb,
    1060             :       name__,
    1061             :       previous_snap_id);
    1062             : }
    1063             : 
    1064             : struct NewCommitUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1065             :   typedef NewCommitUpdateBuilder Builder;
    1066             :   struct Traits;
    1067             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
    1068             :     VT_BRANCH = 4,
    1069             :     VT_NEW_SNAP_ID = 6
    1070             :   };
    1071        3262 :   const flatbuffers::String *branch() const {
    1072        3262 :     return GetPointer<const flatbuffers::String *>(VT_BRANCH);
    1073             :   }
    1074             :   const generated::ObjectId12 *new_snap_id() const {
    1075             :     return GetStruct<const generated::ObjectId12 *>(VT_NEW_SNAP_ID);
    1076             :   }
    1077        3262 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1078        3262 :     return VerifyTableStart(verifier) &&
    1079        3262 :            VerifyOffsetRequired(verifier, VT_BRANCH) &&
    1080        3262 :            verifier.VerifyString(branch()) &&
    1081        9786 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_NEW_SNAP_ID, 1) &&
    1082        6524 :            verifier.EndTable();
    1083             :   }
    1084             : };
    1085             : 
    1086             : struct NewCommitUpdateBuilder {
    1087             :   typedef NewCommitUpdate Table;
    1088             :   flatbuffers::FlatBufferBuilder &fbb_;
    1089             :   flatbuffers::uoffset_t start_;
    1090             :   void add_branch(flatbuffers::Offset<flatbuffers::String> branch) {
    1091             :     fbb_.AddOffset(NewCommitUpdate::VT_BRANCH, branch);
    1092             :   }
    1093             :   void add_new_snap_id(const generated::ObjectId12 *new_snap_id) {
    1094             :     fbb_.AddStruct(NewCommitUpdate::VT_NEW_SNAP_ID, new_snap_id);
    1095             :   }
    1096             :   explicit NewCommitUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1097             :         : fbb_(_fbb) {
    1098             :     start_ = fbb_.StartTable();
    1099             :   }
    1100             :   flatbuffers::Offset<NewCommitUpdate> Finish() {
    1101             :     const auto end = fbb_.EndTable(start_);
    1102             :     auto o = flatbuffers::Offset<NewCommitUpdate>(end);
    1103             :     fbb_.Required(o, NewCommitUpdate::VT_BRANCH);
    1104             :     fbb_.Required(o, NewCommitUpdate::VT_NEW_SNAP_ID);
    1105             :     return o;
    1106             :   }
    1107             : };
    1108             : 
    1109             : inline flatbuffers::Offset<NewCommitUpdate> CreateNewCommitUpdate(
    1110             :     flatbuffers::FlatBufferBuilder &_fbb,
    1111             :     flatbuffers::Offset<flatbuffers::String> branch = 0,
    1112             :     const generated::ObjectId12 *new_snap_id = nullptr) {
    1113             :   NewCommitUpdateBuilder builder_(_fbb);
    1114             :   builder_.add_new_snap_id(new_snap_id);
    1115             :   builder_.add_branch(branch);
    1116             :   return builder_.Finish();
    1117             : }
    1118             : 
    1119             : struct NewCommitUpdate::Traits {
    1120             :   using type = NewCommitUpdate;
    1121             :   static auto constexpr Create = CreateNewCommitUpdate;
    1122             : };
    1123             : 
    1124             : inline flatbuffers::Offset<NewCommitUpdate> CreateNewCommitUpdateDirect(
    1125             :     flatbuffers::FlatBufferBuilder &_fbb,
    1126             :     const char *branch = nullptr,
    1127             :     const generated::ObjectId12 *new_snap_id = nullptr) {
    1128             :   auto branch__ = branch ? _fbb.CreateString(branch) : 0;
    1129             :   return generated::CreateNewCommitUpdate(
    1130             :       _fbb,
    1131             :       branch__,
    1132             :       new_snap_id);
    1133             : }
    1134             : 
    1135             : struct CommitAmendedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1136             :   typedef CommitAmendedUpdateBuilder Builder;
    1137             :   struct Traits;
    1138             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
    1139             :     VT_BRANCH = 4,
    1140             :     VT_PREVIOUS_SNAP_ID = 6,
    1141             :     VT_NEW_SNAP_ID = 8
    1142             :   };
    1143           0 :   const flatbuffers::String *branch() const {
    1144           0 :     return GetPointer<const flatbuffers::String *>(VT_BRANCH);
    1145             :   }
    1146             :   const generated::ObjectId12 *previous_snap_id() const {
    1147             :     return GetStruct<const generated::ObjectId12 *>(VT_PREVIOUS_SNAP_ID);
    1148             :   }
    1149             :   const generated::ObjectId12 *new_snap_id() const {
    1150             :     return GetStruct<const generated::ObjectId12 *>(VT_NEW_SNAP_ID);
    1151             :   }
    1152           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1153           0 :     return VerifyTableStart(verifier) &&
    1154           0 :            VerifyOffsetRequired(verifier, VT_BRANCH) &&
    1155           0 :            verifier.VerifyString(branch()) &&
    1156           0 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_PREVIOUS_SNAP_ID, 1) &&
    1157           0 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_NEW_SNAP_ID, 1) &&
    1158           0 :            verifier.EndTable();
    1159             :   }
    1160             : };
    1161             : 
    1162             : struct CommitAmendedUpdateBuilder {
    1163             :   typedef CommitAmendedUpdate Table;
    1164             :   flatbuffers::FlatBufferBuilder &fbb_;
    1165             :   flatbuffers::uoffset_t start_;
    1166             :   void add_branch(flatbuffers::Offset<flatbuffers::String> branch) {
    1167             :     fbb_.AddOffset(CommitAmendedUpdate::VT_BRANCH, branch);
    1168             :   }
    1169             :   void add_previous_snap_id(const generated::ObjectId12 *previous_snap_id) {
    1170             :     fbb_.AddStruct(CommitAmendedUpdate::VT_PREVIOUS_SNAP_ID, previous_snap_id);
    1171             :   }
    1172             :   void add_new_snap_id(const generated::ObjectId12 *new_snap_id) {
    1173             :     fbb_.AddStruct(CommitAmendedUpdate::VT_NEW_SNAP_ID, new_snap_id);
    1174             :   }
    1175             :   explicit CommitAmendedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1176             :         : fbb_(_fbb) {
    1177             :     start_ = fbb_.StartTable();
    1178             :   }
    1179             :   flatbuffers::Offset<CommitAmendedUpdate> Finish() {
    1180             :     const auto end = fbb_.EndTable(start_);
    1181             :     auto o = flatbuffers::Offset<CommitAmendedUpdate>(end);
    1182             :     fbb_.Required(o, CommitAmendedUpdate::VT_BRANCH);
    1183             :     fbb_.Required(o, CommitAmendedUpdate::VT_PREVIOUS_SNAP_ID);
    1184             :     fbb_.Required(o, CommitAmendedUpdate::VT_NEW_SNAP_ID);
    1185             :     return o;
    1186             :   }
    1187             : };
    1188             : 
    1189             : inline flatbuffers::Offset<CommitAmendedUpdate> CreateCommitAmendedUpdate(
    1190             :     flatbuffers::FlatBufferBuilder &_fbb,
    1191             :     flatbuffers::Offset<flatbuffers::String> branch = 0,
    1192             :     const generated::ObjectId12 *previous_snap_id = nullptr,
    1193             :     const generated::ObjectId12 *new_snap_id = nullptr) {
    1194             :   CommitAmendedUpdateBuilder builder_(_fbb);
    1195             :   builder_.add_new_snap_id(new_snap_id);
    1196             :   builder_.add_previous_snap_id(previous_snap_id);
    1197             :   builder_.add_branch(branch);
    1198             :   return builder_.Finish();
    1199             : }
    1200             : 
    1201             : struct CommitAmendedUpdate::Traits {
    1202             :   using type = CommitAmendedUpdate;
    1203             :   static auto constexpr Create = CreateCommitAmendedUpdate;
    1204             : };
    1205             : 
    1206             : inline flatbuffers::Offset<CommitAmendedUpdate> CreateCommitAmendedUpdateDirect(
    1207             :     flatbuffers::FlatBufferBuilder &_fbb,
    1208             :     const char *branch = nullptr,
    1209             :     const generated::ObjectId12 *previous_snap_id = nullptr,
    1210             :     const generated::ObjectId12 *new_snap_id = nullptr) {
    1211             :   auto branch__ = branch ? _fbb.CreateString(branch) : 0;
    1212             :   return generated::CreateCommitAmendedUpdate(
    1213             :       _fbb,
    1214             :       branch__,
    1215             :       previous_snap_id,
    1216             :       new_snap_id);
    1217             : }
    1218             : 
    1219             : struct NewDetachedSnapshotUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1220             :   typedef NewDetachedSnapshotUpdateBuilder Builder;
    1221             :   struct Traits;
    1222             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
    1223             :     VT_NEW_SNAP_ID = 4
    1224             :   };
    1225             :   const generated::ObjectId12 *new_snap_id() const {
    1226             :     return GetStruct<const generated::ObjectId12 *>(VT_NEW_SNAP_ID);
    1227             :   }
    1228           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1229           0 :     return VerifyTableStart(verifier) &&
    1230           0 :            VerifyFieldRequired<generated::ObjectId12>(verifier, VT_NEW_SNAP_ID, 1) &&
    1231           0 :            verifier.EndTable();
    1232             :   }
    1233             : };
    1234             : 
    1235             : struct NewDetachedSnapshotUpdateBuilder {
    1236             :   typedef NewDetachedSnapshotUpdate Table;
    1237             :   flatbuffers::FlatBufferBuilder &fbb_;
    1238             :   flatbuffers::uoffset_t start_;
    1239             :   void add_new_snap_id(const generated::ObjectId12 *new_snap_id) {
    1240             :     fbb_.AddStruct(NewDetachedSnapshotUpdate::VT_NEW_SNAP_ID, new_snap_id);
    1241             :   }
    1242             :   explicit NewDetachedSnapshotUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1243             :         : fbb_(_fbb) {
    1244             :     start_ = fbb_.StartTable();
    1245             :   }
    1246             :   flatbuffers::Offset<NewDetachedSnapshotUpdate> Finish() {
    1247             :     const auto end = fbb_.EndTable(start_);
    1248             :     auto o = flatbuffers::Offset<NewDetachedSnapshotUpdate>(end);
    1249             :     fbb_.Required(o, NewDetachedSnapshotUpdate::VT_NEW_SNAP_ID);
    1250             :     return o;
    1251             :   }
    1252             : };
    1253             : 
    1254             : inline flatbuffers::Offset<NewDetachedSnapshotUpdate> CreateNewDetachedSnapshotUpdate(
    1255             :     flatbuffers::FlatBufferBuilder &_fbb,
    1256             :     const generated::ObjectId12 *new_snap_id = nullptr) {
    1257             :   NewDetachedSnapshotUpdateBuilder builder_(_fbb);
    1258             :   builder_.add_new_snap_id(new_snap_id);
    1259             :   return builder_.Finish();
    1260             : }
    1261             : 
    1262             : struct NewDetachedSnapshotUpdate::Traits {
    1263             :   using type = NewDetachedSnapshotUpdate;
    1264             :   static auto constexpr Create = CreateNewDetachedSnapshotUpdate;
    1265             : };
    1266             : 
    1267             : struct GCRanUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1268             :   typedef GCRanUpdateBuilder Builder;
    1269             :   struct Traits;
    1270           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1271           0 :     return VerifyTableStart(verifier) &&
    1272           0 :            verifier.EndTable();
    1273             :   }
    1274             : };
    1275             : 
    1276             : struct GCRanUpdateBuilder {
    1277             :   typedef GCRanUpdate Table;
    1278             :   flatbuffers::FlatBufferBuilder &fbb_;
    1279             :   flatbuffers::uoffset_t start_;
    1280             :   explicit GCRanUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1281             :         : fbb_(_fbb) {
    1282             :     start_ = fbb_.StartTable();
    1283             :   }
    1284             :   flatbuffers::Offset<GCRanUpdate> Finish() {
    1285             :     const auto end = fbb_.EndTable(start_);
    1286             :     auto o = flatbuffers::Offset<GCRanUpdate>(end);
    1287             :     return o;
    1288             :   }
    1289             : };
    1290             : 
    1291             : inline flatbuffers::Offset<GCRanUpdate> CreateGCRanUpdate(
    1292             :     flatbuffers::FlatBufferBuilder &_fbb) {
    1293             :   GCRanUpdateBuilder builder_(_fbb);
    1294             :   return builder_.Finish();
    1295             : }
    1296             : 
    1297             : struct GCRanUpdate::Traits {
    1298             :   using type = GCRanUpdate;
    1299             :   static auto constexpr Create = CreateGCRanUpdate;
    1300             : };
    1301             : 
    1302             : struct ExpirationRanUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1303             :   typedef ExpirationRanUpdateBuilder Builder;
    1304             :   struct Traits;
    1305           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1306           0 :     return VerifyTableStart(verifier) &&
    1307           0 :            verifier.EndTable();
    1308             :   }
    1309             : };
    1310             : 
    1311             : struct ExpirationRanUpdateBuilder {
    1312             :   typedef ExpirationRanUpdate Table;
    1313             :   flatbuffers::FlatBufferBuilder &fbb_;
    1314             :   flatbuffers::uoffset_t start_;
    1315             :   explicit ExpirationRanUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1316             :         : fbb_(_fbb) {
    1317             :     start_ = fbb_.StartTable();
    1318             :   }
    1319             :   flatbuffers::Offset<ExpirationRanUpdate> Finish() {
    1320             :     const auto end = fbb_.EndTable(start_);
    1321             :     auto o = flatbuffers::Offset<ExpirationRanUpdate>(end);
    1322             :     return o;
    1323             :   }
    1324             : };
    1325             : 
    1326             : inline flatbuffers::Offset<ExpirationRanUpdate> CreateExpirationRanUpdate(
    1327             :     flatbuffers::FlatBufferBuilder &_fbb) {
    1328             :   ExpirationRanUpdateBuilder builder_(_fbb);
    1329             :   return builder_.Finish();
    1330             : }
    1331             : 
    1332             : struct ExpirationRanUpdate::Traits {
    1333             :   using type = ExpirationRanUpdate;
    1334             :   static auto constexpr Create = CreateExpirationRanUpdate;
    1335             : };
    1336             : 
    1337             : struct FeatureFlagChangedUpdate FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1338             :   typedef FeatureFlagChangedUpdateBuilder Builder;
    1339             :   struct Traits;
    1340             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
    1341             :     VT_ID = 4,
    1342             :     VT_NEW_VALUE = 6,
    1343             :     VT_IS_SET = 8
    1344             :   };
    1345             :   uint16_t id() const {
    1346             :     return GetField<uint16_t>(VT_ID, 0);
    1347             :   }
    1348             :   bool new_value() const {
    1349             :     return GetField<uint8_t>(VT_NEW_VALUE, 0) != 0;
    1350             :   }
    1351             :   bool is_set() const {
    1352             :     return GetField<uint8_t>(VT_IS_SET, 0) != 0;
    1353             :   }
    1354           0 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1355           0 :     return VerifyTableStart(verifier) &&
    1356           0 :            VerifyField<uint16_t>(verifier, VT_ID, 2) &&
    1357           0 :            VerifyField<uint8_t>(verifier, VT_NEW_VALUE, 1) &&
    1358           0 :            VerifyField<uint8_t>(verifier, VT_IS_SET, 1) &&
    1359           0 :            verifier.EndTable();
    1360             :   }
    1361             : };
    1362             : 
    1363             : struct FeatureFlagChangedUpdateBuilder {
    1364             :   typedef FeatureFlagChangedUpdate Table;
    1365             :   flatbuffers::FlatBufferBuilder &fbb_;
    1366             :   flatbuffers::uoffset_t start_;
    1367             :   void add_id(uint16_t id) {
    1368             :     fbb_.AddElement<uint16_t>(FeatureFlagChangedUpdate::VT_ID, id, 0);
    1369             :   }
    1370             :   void add_new_value(bool new_value) {
    1371             :     fbb_.AddElement<uint8_t>(FeatureFlagChangedUpdate::VT_NEW_VALUE, static_cast<uint8_t>(new_value), 0);
    1372             :   }
    1373             :   void add_is_set(bool is_set) {
    1374             :     fbb_.AddElement<uint8_t>(FeatureFlagChangedUpdate::VT_IS_SET, static_cast<uint8_t>(is_set), 0);
    1375             :   }
    1376             :   explicit FeatureFlagChangedUpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1377             :         : fbb_(_fbb) {
    1378             :     start_ = fbb_.StartTable();
    1379             :   }
    1380             :   flatbuffers::Offset<FeatureFlagChangedUpdate> Finish() {
    1381             :     const auto end = fbb_.EndTable(start_);
    1382             :     auto o = flatbuffers::Offset<FeatureFlagChangedUpdate>(end);
    1383             :     return o;
    1384             :   }
    1385             : };
    1386             : 
    1387             : inline flatbuffers::Offset<FeatureFlagChangedUpdate> CreateFeatureFlagChangedUpdate(
    1388             :     flatbuffers::FlatBufferBuilder &_fbb,
    1389             :     uint16_t id = 0,
    1390             :     bool new_value = false,
    1391             :     bool is_set = false) {
    1392             :   FeatureFlagChangedUpdateBuilder builder_(_fbb);
    1393             :   builder_.add_id(id);
    1394             :   builder_.add_is_set(is_set);
    1395             :   builder_.add_new_value(new_value);
    1396             :   return builder_.Finish();
    1397             : }
    1398             : 
    1399             : struct FeatureFlagChangedUpdate::Traits {
    1400             :   using type = FeatureFlagChangedUpdate;
    1401             :   static auto constexpr Create = CreateFeatureFlagChangedUpdate;
    1402             : };
    1403             : 
    1404             : struct Update FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1405             :   typedef UpdateBuilder Builder;
    1406             :   struct Traits;
    1407             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
    1408             :     VT_UPDATE_TYPE_TYPE = 4,
    1409             :     VT_UPDATE_TYPE = 6,
    1410             :     VT_UPDATED_AT = 8,
    1411             :     VT_BACKUP_PATH = 10
    1412             :   };
    1413        6243 :   generated::UpdateType update_type_type() const {
    1414        6243 :     return static_cast<generated::UpdateType>(GetField<uint8_t>(VT_UPDATE_TYPE_TYPE, 0));
    1415             :   }
    1416        6243 :   const void *update_type() const {
    1417        6243 :     return GetPointer<const void *>(VT_UPDATE_TYPE);
    1418             :   }
    1419             :   template<typename T> const T *update_type_as() const;
    1420             :   const generated::RepoInitializedUpdate *update_type_as_RepoInitializedUpdate() const {
    1421             :     return update_type_type() == generated::UpdateType::RepoInitializedUpdate ? static_cast<const generated::RepoInitializedUpdate *>(update_type()) : nullptr;
    1422             :   }
    1423             :   const generated::RepoMigratedUpdate *update_type_as_RepoMigratedUpdate() const {
    1424             :     return update_type_type() == generated::UpdateType::RepoMigratedUpdate ? static_cast<const generated::RepoMigratedUpdate *>(update_type()) : nullptr;
    1425             :   }
    1426             :   const generated::ConfigChangedUpdate *update_type_as_ConfigChangedUpdate() const {
    1427             :     return update_type_type() == generated::UpdateType::ConfigChangedUpdate ? static_cast<const generated::ConfigChangedUpdate *>(update_type()) : nullptr;
    1428             :   }
    1429             :   const generated::MetadataChangedUpdate *update_type_as_MetadataChangedUpdate() const {
    1430             :     return update_type_type() == generated::UpdateType::MetadataChangedUpdate ? static_cast<const generated::MetadataChangedUpdate *>(update_type()) : nullptr;
    1431             :   }
    1432             :   const generated::TagCreatedUpdate *update_type_as_TagCreatedUpdate() const {
    1433             :     return update_type_type() == generated::UpdateType::TagCreatedUpdate ? static_cast<const generated::TagCreatedUpdate *>(update_type()) : nullptr;
    1434             :   }
    1435             :   const generated::TagDeletedUpdate *update_type_as_TagDeletedUpdate() const {
    1436             :     return update_type_type() == generated::UpdateType::TagDeletedUpdate ? static_cast<const generated::TagDeletedUpdate *>(update_type()) : nullptr;
    1437             :   }
    1438             :   const generated::BranchCreatedUpdate *update_type_as_BranchCreatedUpdate() const {
    1439             :     return update_type_type() == generated::UpdateType::BranchCreatedUpdate ? static_cast<const generated::BranchCreatedUpdate *>(update_type()) : nullptr;
    1440             :   }
    1441             :   const generated::BranchDeletedUpdate *update_type_as_BranchDeletedUpdate() const {
    1442             :     return update_type_type() == generated::UpdateType::BranchDeletedUpdate ? static_cast<const generated::BranchDeletedUpdate *>(update_type()) : nullptr;
    1443             :   }
    1444             :   const generated::BranchResetUpdate *update_type_as_BranchResetUpdate() const {
    1445             :     return update_type_type() == generated::UpdateType::BranchResetUpdate ? static_cast<const generated::BranchResetUpdate *>(update_type()) : nullptr;
    1446             :   }
    1447             :   const generated::NewCommitUpdate *update_type_as_NewCommitUpdate() const {
    1448             :     return update_type_type() == generated::UpdateType::NewCommitUpdate ? static_cast<const generated::NewCommitUpdate *>(update_type()) : nullptr;
    1449             :   }
    1450             :   const generated::CommitAmendedUpdate *update_type_as_CommitAmendedUpdate() const {
    1451             :     return update_type_type() == generated::UpdateType::CommitAmendedUpdate ? static_cast<const generated::CommitAmendedUpdate *>(update_type()) : nullptr;
    1452             :   }
    1453             :   const generated::NewDetachedSnapshotUpdate *update_type_as_NewDetachedSnapshotUpdate() const {
    1454             :     return update_type_type() == generated::UpdateType::NewDetachedSnapshotUpdate ? static_cast<const generated::NewDetachedSnapshotUpdate *>(update_type()) : nullptr;
    1455             :   }
    1456             :   const generated::GCRanUpdate *update_type_as_GCRanUpdate() const {
    1457             :     return update_type_type() == generated::UpdateType::GCRanUpdate ? static_cast<const generated::GCRanUpdate *>(update_type()) : nullptr;
    1458             :   }
    1459             :   const generated::ExpirationRanUpdate *update_type_as_ExpirationRanUpdate() const {
    1460             :     return update_type_type() == generated::UpdateType::ExpirationRanUpdate ? static_cast<const generated::ExpirationRanUpdate *>(update_type()) : nullptr;
    1461             :   }
    1462             :   const generated::FeatureFlagChangedUpdate *update_type_as_FeatureFlagChangedUpdate() const {
    1463             :     return update_type_type() == generated::UpdateType::FeatureFlagChangedUpdate ? static_cast<const generated::FeatureFlagChangedUpdate *>(update_type()) : nullptr;
    1464             :   }
    1465             :   const generated::RepoStatusChangedUpdate *update_type_as_RepoStatusChangedUpdate() const {
    1466             :     return update_type_type() == generated::UpdateType::RepoStatusChangedUpdate ? static_cast<const generated::RepoStatusChangedUpdate *>(update_type()) : nullptr;
    1467             :   }
    1468             :   uint64_t updated_at() const {
    1469             :     return GetField<uint64_t>(VT_UPDATED_AT, 0);
    1470             :   }
    1471        6243 :   const flatbuffers::String *backup_path() const {
    1472        6243 :     return GetPointer<const flatbuffers::String *>(VT_BACKUP_PATH);
    1473             :   }
    1474        6243 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1475        6243 :     return VerifyTableStart(verifier) &&
    1476        6243 :            VerifyField<uint8_t>(verifier, VT_UPDATE_TYPE_TYPE, 1) &&
    1477        6243 :            VerifyOffsetRequired(verifier, VT_UPDATE_TYPE) &&
    1478        6243 :            VerifyUpdateType(verifier, update_type(), update_type_type()) &&
    1479        6243 :            VerifyField<uint64_t>(verifier, VT_UPDATED_AT, 8) &&
    1480        6243 :            VerifyOffset(verifier, VT_BACKUP_PATH) &&
    1481       18729 :            verifier.VerifyString(backup_path()) &&
    1482       12486 :            verifier.EndTable();
    1483             :   }
    1484             : };
    1485             : 
    1486             : template<> inline const generated::RepoInitializedUpdate *Update::update_type_as<generated::RepoInitializedUpdate>() const {
    1487             :   return update_type_as_RepoInitializedUpdate();
    1488             : }
    1489             : 
    1490             : template<> inline const generated::RepoMigratedUpdate *Update::update_type_as<generated::RepoMigratedUpdate>() const {
    1491             :   return update_type_as_RepoMigratedUpdate();
    1492             : }
    1493             : 
    1494             : template<> inline const generated::ConfigChangedUpdate *Update::update_type_as<generated::ConfigChangedUpdate>() const {
    1495             :   return update_type_as_ConfigChangedUpdate();
    1496             : }
    1497             : 
    1498             : template<> inline const generated::MetadataChangedUpdate *Update::update_type_as<generated::MetadataChangedUpdate>() const {
    1499             :   return update_type_as_MetadataChangedUpdate();
    1500             : }
    1501             : 
    1502             : template<> inline const generated::TagCreatedUpdate *Update::update_type_as<generated::TagCreatedUpdate>() const {
    1503             :   return update_type_as_TagCreatedUpdate();
    1504             : }
    1505             : 
    1506             : template<> inline const generated::TagDeletedUpdate *Update::update_type_as<generated::TagDeletedUpdate>() const {
    1507             :   return update_type_as_TagDeletedUpdate();
    1508             : }
    1509             : 
    1510             : template<> inline const generated::BranchCreatedUpdate *Update::update_type_as<generated::BranchCreatedUpdate>() const {
    1511             :   return update_type_as_BranchCreatedUpdate();
    1512             : }
    1513             : 
    1514             : template<> inline const generated::BranchDeletedUpdate *Update::update_type_as<generated::BranchDeletedUpdate>() const {
    1515             :   return update_type_as_BranchDeletedUpdate();
    1516             : }
    1517             : 
    1518             : template<> inline const generated::BranchResetUpdate *Update::update_type_as<generated::BranchResetUpdate>() const {
    1519             :   return update_type_as_BranchResetUpdate();
    1520             : }
    1521             : 
    1522             : template<> inline const generated::NewCommitUpdate *Update::update_type_as<generated::NewCommitUpdate>() const {
    1523             :   return update_type_as_NewCommitUpdate();
    1524             : }
    1525             : 
    1526             : template<> inline const generated::CommitAmendedUpdate *Update::update_type_as<generated::CommitAmendedUpdate>() const {
    1527             :   return update_type_as_CommitAmendedUpdate();
    1528             : }
    1529             : 
    1530             : template<> inline const generated::NewDetachedSnapshotUpdate *Update::update_type_as<generated::NewDetachedSnapshotUpdate>() const {
    1531             :   return update_type_as_NewDetachedSnapshotUpdate();
    1532             : }
    1533             : 
    1534             : template<> inline const generated::GCRanUpdate *Update::update_type_as<generated::GCRanUpdate>() const {
    1535             :   return update_type_as_GCRanUpdate();
    1536             : }
    1537             : 
    1538             : template<> inline const generated::ExpirationRanUpdate *Update::update_type_as<generated::ExpirationRanUpdate>() const {
    1539             :   return update_type_as_ExpirationRanUpdate();
    1540             : }
    1541             : 
    1542             : template<> inline const generated::FeatureFlagChangedUpdate *Update::update_type_as<generated::FeatureFlagChangedUpdate>() const {
    1543             :   return update_type_as_FeatureFlagChangedUpdate();
    1544             : }
    1545             : 
    1546             : template<> inline const generated::RepoStatusChangedUpdate *Update::update_type_as<generated::RepoStatusChangedUpdate>() const {
    1547             :   return update_type_as_RepoStatusChangedUpdate();
    1548             : }
    1549             : 
    1550             : struct UpdateBuilder {
    1551             :   typedef Update Table;
    1552             :   flatbuffers::FlatBufferBuilder &fbb_;
    1553             :   flatbuffers::uoffset_t start_;
    1554             :   void add_update_type_type(generated::UpdateType update_type_type) {
    1555             :     fbb_.AddElement<uint8_t>(Update::VT_UPDATE_TYPE_TYPE, static_cast<uint8_t>(update_type_type), 0);
    1556             :   }
    1557             :   void add_update_type(flatbuffers::Offset<void> update_type) {
    1558             :     fbb_.AddOffset(Update::VT_UPDATE_TYPE, update_type);
    1559             :   }
    1560             :   void add_updated_at(uint64_t updated_at) {
    1561             :     fbb_.AddElement<uint64_t>(Update::VT_UPDATED_AT, updated_at, 0);
    1562             :   }
    1563             :   void add_backup_path(flatbuffers::Offset<flatbuffers::String> backup_path) {
    1564             :     fbb_.AddOffset(Update::VT_BACKUP_PATH, backup_path);
    1565             :   }
    1566             :   explicit UpdateBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1567             :         : fbb_(_fbb) {
    1568             :     start_ = fbb_.StartTable();
    1569             :   }
    1570             :   flatbuffers::Offset<Update> Finish() {
    1571             :     const auto end = fbb_.EndTable(start_);
    1572             :     auto o = flatbuffers::Offset<Update>(end);
    1573             :     fbb_.Required(o, Update::VT_UPDATE_TYPE);
    1574             :     return o;
    1575             :   }
    1576             : };
    1577             : 
    1578             : inline flatbuffers::Offset<Update> CreateUpdate(
    1579             :     flatbuffers::FlatBufferBuilder &_fbb,
    1580             :     generated::UpdateType update_type_type = generated::UpdateType::NONE,
    1581             :     flatbuffers::Offset<void> update_type = 0,
    1582             :     uint64_t updated_at = 0,
    1583             :     flatbuffers::Offset<flatbuffers::String> backup_path = 0) {
    1584             :   UpdateBuilder builder_(_fbb);
    1585             :   builder_.add_updated_at(updated_at);
    1586             :   builder_.add_backup_path(backup_path);
    1587             :   builder_.add_update_type(update_type);
    1588             :   builder_.add_update_type_type(update_type_type);
    1589             :   return builder_.Finish();
    1590             : }
    1591             : 
    1592             : struct Update::Traits {
    1593             :   using type = Update;
    1594             :   static auto constexpr Create = CreateUpdate;
    1595             : };
    1596             : 
    1597             : inline flatbuffers::Offset<Update> CreateUpdateDirect(
    1598             :     flatbuffers::FlatBufferBuilder &_fbb,
    1599             :     generated::UpdateType update_type_type = generated::UpdateType::NONE,
    1600             :     flatbuffers::Offset<void> update_type = 0,
    1601             :     uint64_t updated_at = 0,
    1602             :     const char *backup_path = nullptr) {
    1603             :   auto backup_path__ = backup_path ? _fbb.CreateString(backup_path) : 0;
    1604             :   return generated::CreateUpdate(
    1605             :       _fbb,
    1606             :       update_type_type,
    1607             :       update_type,
    1608             :       updated_at,
    1609             :       backup_path__);
    1610             : }
    1611             : 
    1612             : struct Repo FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    1613             :   typedef RepoBuilder Builder;
    1614             :   struct Traits;
    1615             :   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
    1616             :     VT_SPEC_VERSION = 4,
    1617             :     VT_TAGS = 6,
    1618             :     VT_BRANCHES = 8,
    1619             :     VT_DELETED_TAGS = 10,
    1620             :     VT_SNAPSHOTS = 12,
    1621             :     VT_STATUS = 14,
    1622             :     VT_METADATA = 16,
    1623             :     VT_LATEST_UPDATES = 18,
    1624             :     VT_REPO_BEFORE_UPDATES = 20,
    1625             :     VT_CONFIG = 22,
    1626             :     VT_ENABLED_FEATURE_FLAGS = 24,
    1627             :     VT_DISABLED_FEATURE_FLAGS = 26,
    1628             :     VT_EXTRA = 28
    1629             :   };
    1630        2194 :   uint8_t spec_version() const {
    1631        2194 :     return GetField<uint8_t>(VT_SPEC_VERSION, 0);
    1632             :   }
    1633        6578 :   const flatbuffers::Vector<flatbuffers::Offset<generated::Ref>> *tags() const {
    1634        6578 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::Ref>> *>(VT_TAGS);
    1635             :   }
    1636        6576 :   const flatbuffers::Vector<flatbuffers::Offset<generated::Ref>> *branches() const {
    1637        6576 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::Ref>> *>(VT_BRANCHES);
    1638             :   }
    1639        4388 :   const flatbuffers::Vector<flatbuffers::Offset<flatbuffers::String>> *deleted_tags() const {
    1640        4388 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<flatbuffers::String>> *>(VT_DELETED_TAGS);
    1641             :   }
    1642        6579 :   const flatbuffers::Vector<flatbuffers::Offset<generated::SnapshotInfo>> *snapshots() const {
    1643        6579 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::SnapshotInfo>> *>(VT_SNAPSHOTS);
    1644             :   }
    1645        4386 :   const generated::RepoStatus *status() const {
    1646        4386 :     return GetPointer<const generated::RepoStatus *>(VT_STATUS);
    1647             :   }
    1648        6579 :   const flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>> *metadata() const {
    1649        6579 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>> *>(VT_METADATA);
    1650             :   }
    1651        4388 :   const flatbuffers::Vector<flatbuffers::Offset<generated::Update>> *latest_updates() const {
    1652        4388 :     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<generated::Update>> *>(VT_LATEST_UPDATES);
    1653             :   }
    1654        2194 :   const flatbuffers::String *repo_before_updates() const {
    1655        2194 :     return GetPointer<const flatbuffers::String *>(VT_REPO_BEFORE_UPDATES);
    1656             :   }
    1657        6579 :   const flatbuffers::Vector<uint8_t> *config() const {
    1658        6579 :     return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CONFIG);
    1659             :   }
    1660             :   flexbuffers::Reference config_flexbuffer_root() const {
    1661             :     return flexbuffers::GetRoot(config()->Data(), config()->size());
    1662             :   }
    1663        2194 :   const flatbuffers::Vector<uint16_t> *enabled_feature_flags() const {
    1664        2194 :     return GetPointer<const flatbuffers::Vector<uint16_t> *>(VT_ENABLED_FEATURE_FLAGS);
    1665             :   }
    1666        2194 :   const flatbuffers::Vector<uint16_t> *disabled_feature_flags() const {
    1667        2194 :     return GetPointer<const flatbuffers::Vector<uint16_t> *>(VT_DISABLED_FEATURE_FLAGS);
    1668             :   }
    1669        2194 :   const flatbuffers::Vector<uint8_t> *extra() const {
    1670        2194 :     return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_EXTRA);
    1671             :   }
    1672        2195 :   bool Verify(flatbuffers::Verifier &verifier) const {
    1673        2195 :     return VerifyTableStart(verifier) &&
    1674        2194 :            VerifyField<uint8_t>(verifier, VT_SPEC_VERSION, 1) &&
    1675        2194 :            VerifyOffsetRequired(verifier, VT_TAGS) &&
    1676        2194 :            verifier.VerifyVector(tags()) &&
    1677        2194 :            verifier.VerifyVectorOfTables(tags()) &&
    1678        2194 :            VerifyOffsetRequired(verifier, VT_BRANCHES) &&
    1679        2194 :            verifier.VerifyVector(branches()) &&
    1680        2194 :            verifier.VerifyVectorOfTables(branches()) &&
    1681        2194 :            VerifyOffsetRequired(verifier, VT_DELETED_TAGS) &&
    1682        2194 :            verifier.VerifyVector(deleted_tags()) &&
    1683        2194 :            verifier.VerifyVectorOfStrings(deleted_tags()) &&
    1684        2194 :            VerifyOffsetRequired(verifier, VT_SNAPSHOTS) &&
    1685        2194 :            verifier.VerifyVector(snapshots()) &&
    1686        2194 :            verifier.VerifyVectorOfTables(snapshots()) &&
    1687        2194 :            VerifyOffsetRequired(verifier, VT_STATUS) &&
    1688        2194 :            verifier.VerifyTable(status()) &&
    1689        2194 :            VerifyOffset(verifier, VT_METADATA) &&
    1690        2194 :            verifier.VerifyVector(metadata()) &&
    1691        2194 :            verifier.VerifyVectorOfTables(metadata()) &&
    1692        2194 :            VerifyOffsetRequired(verifier, VT_LATEST_UPDATES) &&
    1693        2194 :            verifier.VerifyVector(latest_updates()) &&
    1694        2194 :            verifier.VerifyVectorOfTables(latest_updates()) &&
    1695        2194 :            VerifyOffset(verifier, VT_REPO_BEFORE_UPDATES) &&
    1696        2194 :            verifier.VerifyString(repo_before_updates()) &&
    1697        2194 :            VerifyOffset(verifier, VT_CONFIG) &&
    1698        2194 :            verifier.VerifyVector(config()) &&
    1699        2194 :            flexbuffers::VerifyNestedFlexBuffer(config(), verifier) &&
    1700        2194 :            VerifyOffset(verifier, VT_ENABLED_FEATURE_FLAGS) &&
    1701        2194 :            verifier.VerifyVector(enabled_feature_flags()) &&
    1702        2194 :            VerifyOffset(verifier, VT_DISABLED_FEATURE_FLAGS) &&
    1703        2194 :            verifier.VerifyVector(disabled_feature_flags()) &&
    1704        2194 :            VerifyOffset(verifier, VT_EXTRA) &&
    1705        6583 :            verifier.VerifyVector(extra()) &&
    1706        4389 :            verifier.EndTable();
    1707             :   }
    1708             : };
    1709             : 
    1710             : struct RepoBuilder {
    1711             :   typedef Repo Table;
    1712             :   flatbuffers::FlatBufferBuilder &fbb_;
    1713             :   flatbuffers::uoffset_t start_;
    1714             :   void add_spec_version(uint8_t spec_version) {
    1715             :     fbb_.AddElement<uint8_t>(Repo::VT_SPEC_VERSION, spec_version, 0);
    1716             :   }
    1717             :   void add_tags(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::Ref>>> tags) {
    1718             :     fbb_.AddOffset(Repo::VT_TAGS, tags);
    1719             :   }
    1720             :   void add_branches(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::Ref>>> branches) {
    1721             :     fbb_.AddOffset(Repo::VT_BRANCHES, branches);
    1722             :   }
    1723             :   void add_deleted_tags(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<flatbuffers::String>>> deleted_tags) {
    1724             :     fbb_.AddOffset(Repo::VT_DELETED_TAGS, deleted_tags);
    1725             :   }
    1726             :   void add_snapshots(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::SnapshotInfo>>> snapshots) {
    1727             :     fbb_.AddOffset(Repo::VT_SNAPSHOTS, snapshots);
    1728             :   }
    1729             :   void add_status(flatbuffers::Offset<generated::RepoStatus> status) {
    1730             :     fbb_.AddOffset(Repo::VT_STATUS, status);
    1731             :   }
    1732             :   void add_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>>> metadata) {
    1733             :     fbb_.AddOffset(Repo::VT_METADATA, metadata);
    1734             :   }
    1735             :   void add_latest_updates(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::Update>>> latest_updates) {
    1736             :     fbb_.AddOffset(Repo::VT_LATEST_UPDATES, latest_updates);
    1737             :   }
    1738             :   void add_repo_before_updates(flatbuffers::Offset<flatbuffers::String> repo_before_updates) {
    1739             :     fbb_.AddOffset(Repo::VT_REPO_BEFORE_UPDATES, repo_before_updates);
    1740             :   }
    1741             :   void add_config(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> config) {
    1742             :     fbb_.AddOffset(Repo::VT_CONFIG, config);
    1743             :   }
    1744             :   void add_enabled_feature_flags(flatbuffers::Offset<flatbuffers::Vector<uint16_t>> enabled_feature_flags) {
    1745             :     fbb_.AddOffset(Repo::VT_ENABLED_FEATURE_FLAGS, enabled_feature_flags);
    1746             :   }
    1747             :   void add_disabled_feature_flags(flatbuffers::Offset<flatbuffers::Vector<uint16_t>> disabled_feature_flags) {
    1748             :     fbb_.AddOffset(Repo::VT_DISABLED_FEATURE_FLAGS, disabled_feature_flags);
    1749             :   }
    1750             :   void add_extra(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra) {
    1751             :     fbb_.AddOffset(Repo::VT_EXTRA, extra);
    1752             :   }
    1753             :   explicit RepoBuilder(flatbuffers::FlatBufferBuilder &_fbb)
    1754             :         : fbb_(_fbb) {
    1755             :     start_ = fbb_.StartTable();
    1756             :   }
    1757             :   flatbuffers::Offset<Repo> Finish() {
    1758             :     const auto end = fbb_.EndTable(start_);
    1759             :     auto o = flatbuffers::Offset<Repo>(end);
    1760             :     fbb_.Required(o, Repo::VT_TAGS);
    1761             :     fbb_.Required(o, Repo::VT_BRANCHES);
    1762             :     fbb_.Required(o, Repo::VT_DELETED_TAGS);
    1763             :     fbb_.Required(o, Repo::VT_SNAPSHOTS);
    1764             :     fbb_.Required(o, Repo::VT_STATUS);
    1765             :     fbb_.Required(o, Repo::VT_LATEST_UPDATES);
    1766             :     return o;
    1767             :   }
    1768             : };
    1769             : 
    1770             : inline flatbuffers::Offset<Repo> CreateRepo(
    1771             :     flatbuffers::FlatBufferBuilder &_fbb,
    1772             :     uint8_t spec_version = 0,
    1773             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::Ref>>> tags = 0,
    1774             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::Ref>>> branches = 0,
    1775             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<flatbuffers::String>>> deleted_tags = 0,
    1776             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::SnapshotInfo>>> snapshots = 0,
    1777             :     flatbuffers::Offset<generated::RepoStatus> status = 0,
    1778             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::MetadataItem>>> metadata = 0,
    1779             :     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<generated::Update>>> latest_updates = 0,
    1780             :     flatbuffers::Offset<flatbuffers::String> repo_before_updates = 0,
    1781             :     flatbuffers::Offset<flatbuffers::Vector<uint8_t>> config = 0,
    1782             :     flatbuffers::Offset<flatbuffers::Vector<uint16_t>> enabled_feature_flags = 0,
    1783             :     flatbuffers::Offset<flatbuffers::Vector<uint16_t>> disabled_feature_flags = 0,
    1784             :     flatbuffers::Offset<flatbuffers::Vector<uint8_t>> extra = 0) {
    1785             :   RepoBuilder builder_(_fbb);
    1786             :   builder_.add_extra(extra);
    1787             :   builder_.add_disabled_feature_flags(disabled_feature_flags);
    1788             :   builder_.add_enabled_feature_flags(enabled_feature_flags);
    1789             :   builder_.add_config(config);
    1790             :   builder_.add_repo_before_updates(repo_before_updates);
    1791             :   builder_.add_latest_updates(latest_updates);
    1792             :   builder_.add_metadata(metadata);
    1793             :   builder_.add_status(status);
    1794             :   builder_.add_snapshots(snapshots);
    1795             :   builder_.add_deleted_tags(deleted_tags);
    1796             :   builder_.add_branches(branches);
    1797             :   builder_.add_tags(tags);
    1798             :   builder_.add_spec_version(spec_version);
    1799             :   return builder_.Finish();
    1800             : }
    1801             : 
    1802             : struct Repo::Traits {
    1803             :   using type = Repo;
    1804             :   static auto constexpr Create = CreateRepo;
    1805             : };
    1806             : 
    1807             : inline flatbuffers::Offset<Repo> CreateRepoDirect(
    1808             :     flatbuffers::FlatBufferBuilder &_fbb,
    1809             :     uint8_t spec_version = 0,
    1810             :     const std::vector<flatbuffers::Offset<generated::Ref>> *tags = nullptr,
    1811             :     const std::vector<flatbuffers::Offset<generated::Ref>> *branches = nullptr,
    1812             :     const std::vector<flatbuffers::Offset<flatbuffers::String>> *deleted_tags = nullptr,
    1813             :     const std::vector<flatbuffers::Offset<generated::SnapshotInfo>> *snapshots = nullptr,
    1814             :     flatbuffers::Offset<generated::RepoStatus> status = 0,
    1815             :     const std::vector<flatbuffers::Offset<generated::MetadataItem>> *metadata = nullptr,
    1816             :     const std::vector<flatbuffers::Offset<generated::Update>> *latest_updates = nullptr,
    1817             :     const char *repo_before_updates = nullptr,
    1818             :     const std::vector<uint8_t> *config = nullptr,
    1819             :     const std::vector<uint16_t> *enabled_feature_flags = nullptr,
    1820             :     const std::vector<uint16_t> *disabled_feature_flags = nullptr,
    1821             :     const std::vector<uint8_t> *extra = nullptr) {
    1822             :   auto tags__ = tags ? _fbb.CreateVector<flatbuffers::Offset<generated::Ref>>(*tags) : 0;
    1823             :   auto branches__ = branches ? _fbb.CreateVector<flatbuffers::Offset<generated::Ref>>(*branches) : 0;
    1824             :   auto deleted_tags__ = deleted_tags ? _fbb.CreateVector<flatbuffers::Offset<flatbuffers::String>>(*deleted_tags) : 0;
    1825             :   auto snapshots__ = snapshots ? _fbb.CreateVector<flatbuffers::Offset<generated::SnapshotInfo>>(*snapshots) : 0;
    1826             :   auto metadata__ = metadata ? _fbb.CreateVector<flatbuffers::Offset<generated::MetadataItem>>(*metadata) : 0;
    1827             :   auto latest_updates__ = latest_updates ? _fbb.CreateVector<flatbuffers::Offset<generated::Update>>(*latest_updates) : 0;
    1828             :   auto repo_before_updates__ = repo_before_updates ? _fbb.CreateString(repo_before_updates) : 0;
    1829             :   auto config__ = config ? _fbb.CreateVector<uint8_t>(*config) : 0;
    1830             :   auto enabled_feature_flags__ = enabled_feature_flags ? _fbb.CreateVector<uint16_t>(*enabled_feature_flags) : 0;
    1831             :   auto disabled_feature_flags__ = disabled_feature_flags ? _fbb.CreateVector<uint16_t>(*disabled_feature_flags) : 0;
    1832             :   auto extra__ = extra ? _fbb.CreateVector<uint8_t>(*extra) : 0;
    1833             :   return generated::CreateRepo(
    1834             :       _fbb,
    1835             :       spec_version,
    1836             :       tags__,
    1837             :       branches__,
    1838             :       deleted_tags__,
    1839             :       snapshots__,
    1840             :       status,
    1841             :       metadata__,
    1842             :       latest_updates__,
    1843             :       repo_before_updates__,
    1844             :       config__,
    1845             :       enabled_feature_flags__,
    1846             :       disabled_feature_flags__,
    1847             :       extra__);
    1848             : }
    1849             : 
    1850        6243 : inline bool VerifyUpdateType(flatbuffers::Verifier &verifier, const void *obj, UpdateType type) {
    1851        6243 :   switch (type) {
    1852           0 :     case UpdateType::NONE: {
    1853           0 :       return true;
    1854             :     }
    1855        2123 :     case UpdateType::RepoInitializedUpdate: {
    1856        2123 :       auto ptr = reinterpret_cast<const generated::RepoInitializedUpdate *>(obj);
    1857        2123 :       return verifier.VerifyTable(ptr);
    1858             :     }
    1859           2 :     case UpdateType::RepoMigratedUpdate: {
    1860           2 :       auto ptr = reinterpret_cast<const generated::RepoMigratedUpdate *>(obj);
    1861           2 :       return verifier.VerifyTable(ptr);
    1862             :     }
    1863           0 :     case UpdateType::ConfigChangedUpdate: {
    1864           0 :       auto ptr = reinterpret_cast<const generated::ConfigChangedUpdate *>(obj);
    1865           0 :       return verifier.VerifyTable(ptr);
    1866             :     }
    1867           0 :     case UpdateType::MetadataChangedUpdate: {
    1868           0 :       auto ptr = reinterpret_cast<const generated::MetadataChangedUpdate *>(obj);
    1869           0 :       return verifier.VerifyTable(ptr);
    1870             :     }
    1871           0 :     case UpdateType::TagCreatedUpdate: {
    1872           0 :       auto ptr = reinterpret_cast<const generated::TagCreatedUpdate *>(obj);
    1873           0 :       return verifier.VerifyTable(ptr);
    1874             :     }
    1875           0 :     case UpdateType::TagDeletedUpdate: {
    1876           0 :       auto ptr = reinterpret_cast<const generated::TagDeletedUpdate *>(obj);
    1877           0 :       return verifier.VerifyTable(ptr);
    1878             :     }
    1879         284 :     case UpdateType::BranchCreatedUpdate: {
    1880         284 :       auto ptr = reinterpret_cast<const generated::BranchCreatedUpdate *>(obj);
    1881         284 :       return verifier.VerifyTable(ptr);
    1882             :     }
    1883         286 :     case UpdateType::BranchDeletedUpdate: {
    1884         286 :       auto ptr = reinterpret_cast<const generated::BranchDeletedUpdate *>(obj);
    1885         286 :       return verifier.VerifyTable(ptr);
    1886             :     }
    1887         286 :     case UpdateType::BranchResetUpdate: {
    1888         286 :       auto ptr = reinterpret_cast<const generated::BranchResetUpdate *>(obj);
    1889         286 :       return verifier.VerifyTable(ptr);
    1890             :     }
    1891        3262 :     case UpdateType::NewCommitUpdate: {
    1892        3262 :       auto ptr = reinterpret_cast<const generated::NewCommitUpdate *>(obj);
    1893        3262 :       return verifier.VerifyTable(ptr);
    1894             :     }
    1895           0 :     case UpdateType::CommitAmendedUpdate: {
    1896           0 :       auto ptr = reinterpret_cast<const generated::CommitAmendedUpdate *>(obj);
    1897           0 :       return verifier.VerifyTable(ptr);
    1898             :     }
    1899           0 :     case UpdateType::NewDetachedSnapshotUpdate: {
    1900           0 :       auto ptr = reinterpret_cast<const generated::NewDetachedSnapshotUpdate *>(obj);
    1901           0 :       return verifier.VerifyTable(ptr);
    1902             :     }
    1903           0 :     case UpdateType::GCRanUpdate: {
    1904           0 :       auto ptr = reinterpret_cast<const generated::GCRanUpdate *>(obj);
    1905           0 :       return verifier.VerifyTable(ptr);
    1906             :     }
    1907           0 :     case UpdateType::ExpirationRanUpdate: {
    1908           0 :       auto ptr = reinterpret_cast<const generated::ExpirationRanUpdate *>(obj);
    1909           0 :       return verifier.VerifyTable(ptr);
    1910             :     }
    1911           0 :     case UpdateType::FeatureFlagChangedUpdate: {
    1912           0 :       auto ptr = reinterpret_cast<const generated::FeatureFlagChangedUpdate *>(obj);
    1913           0 :       return verifier.VerifyTable(ptr);
    1914             :     }
    1915           0 :     case UpdateType::RepoStatusChangedUpdate: {
    1916           0 :       auto ptr = reinterpret_cast<const generated::RepoStatusChangedUpdate *>(obj);
    1917           0 :       return verifier.VerifyTable(ptr);
    1918             :     }
    1919           0 :     default: return true;
    1920             :   }
    1921             : }
    1922             : 
    1923             : inline bool VerifyUpdateTypeVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<UpdateType> *types) {
    1924             :   if (!values || !types) return !values && !types;
    1925             :   if (values->size() != types->size()) return false;
    1926             :   for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
    1927             :     if (!VerifyUpdateType(
    1928             :         verifier,  values->Get(i), types->GetEnum<UpdateType>(i))) {
    1929             :       return false;
    1930             :     }
    1931             :   }
    1932             :   return true;
    1933             : }
    1934             : 
    1935        2194 : inline const generated::Repo *GetRepo(const void *buf) {
    1936        2194 :   return flatbuffers::GetRoot<generated::Repo>(buf);
    1937             : }
    1938             : 
    1939             : inline const generated::Repo *GetSizePrefixedRepo(const void *buf) {
    1940             :   return flatbuffers::GetSizePrefixedRoot<generated::Repo>(buf);
    1941             : }
    1942             : 
    1943        2197 : inline bool VerifyRepoBuffer(
    1944             :     flatbuffers::Verifier &verifier) {
    1945        2197 :   return verifier.VerifyBuffer<generated::Repo>(nullptr);
    1946             : }
    1947             : 
    1948             : inline bool VerifySizePrefixedRepoBuffer(
    1949             :     flatbuffers::Verifier &verifier) {
    1950             :   return verifier.VerifySizePrefixedBuffer<generated::Repo>(nullptr);
    1951             : }
    1952             : 
    1953             : inline void FinishRepoBuffer(
    1954             :     flatbuffers::FlatBufferBuilder &fbb,
    1955             :     flatbuffers::Offset<generated::Repo> root) {
    1956             :   fbb.Finish(root);
    1957             : }
    1958             : 
    1959             : inline void FinishSizePrefixedRepoBuffer(
    1960             :     flatbuffers::FlatBufferBuilder &fbb,
    1961             :     flatbuffers::Offset<generated::Repo> root) {
    1962             :   fbb.FinishSizePrefixed(root);
    1963             : }
    1964             : 
    1965             : }  // namespace generated
    1966             : 
    1967             : #endif  // FLATBUFFERS_GENERATED_REPO_GENERATED_H_

Generated by: LCOV version 1.14