text: // automatically generated by the FlatBuffers compiler, do not modify
  
  
  #ifndef FLATBUFFERS_GENERATED_SCHEMA_FLATCOLLECTIONS_H_
  #define FLATBUFFERS_GENERATED_SCHEMA_FLATCOLLECTIONS_H_
  
  #include "flatbuffers/flatbuffers.h"
  
  namespace flatcollections {
  
  struct StringIntDictionary;
  
  struct StringIntDictionaryEntry;
  
  struct StringIntDictionary FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
      VT_ENTRIES = 4
    };
    const flatbuffers::Vector<flatbuffers::Offset<StringIntDictionaryEntry>> *entries() const {
      return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<StringIntDictionaryEntry>> *>(VT_ENTRIES);
    }
    bool Verify(flatbuffers::Verifier &verifier) const {
      return VerifyTableStart(verifier) &&
             VerifyOffset(verifier, VT_ENTRIES) &&
             verifier.VerifyVector(entries()) &&
             verifier.VerifyVectorOfTables(entries()) &&
             verifier.EndTable();
    }
  };
  
  struct StringIntDictionaryBuilder {
    flatbuffers::FlatBufferBuilder &fbb_;
    flatbuffers::uoffset_t start_;
    void add_entries(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<StringIntDictionaryEntry>>> entries) {
      fbb_.AddOffset(StringIntDictionary::VT_ENTRIES, entries);
    }
    explicit StringIntDictionaryBuilder(flatbuffers::FlatBufferBuilder &_fbb)
          : fbb_(_fbb) {
      start_ = fbb_.StartTable();
    }
    StringIntDictionaryBuilder &operator=(const StringIntDictionaryBuilder &);
    flatbuffers::Offset<StringIntDictionary> Finish() {
      const auto end = fbb_.EndTable(start_);
      auto o = flatbuffers::Offset<StringIntDictionary>(end);
      return o;
    }
  };
  
  inline flatbuffers::Offset<StringIntDictionary> CreateStringIntDictionary(
      flatbuffers::FlatBufferBuilder &_fbb,
      flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<StringIntDictionaryEntry>>> entries = 0) {
    StringIntDictionaryBuilder builder_(_fbb);
    builder_.add_entries(entries);
    return builder_.Finish();
  }
  
  inline flatbuffers::Offset<StringIntDictionary> CreateStringIntDictionaryDirect(
      flatbuffers::FlatBufferBuilder &_fbb,
      const std::vector<flatbuffers::Offset<StringIntDictionaryEntry>> *entries = nullptr) {
    auto entries__ = entries ? _fbb.CreateVector<flatbuffers::Offset<StringIntDictionaryEntry>>(*entries) : 0;
    return flatcollections::CreateStringIntDictionary(
        _fbb,
        entries__);
  }
  
  struct StringIntDictionaryEntry FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
    enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
      VT_KEY = 4,
      VT_VALUE = 6
    };
    const flatbuffers::String *key() const {
      return GetPointer<const flatbuffers::String *>(VT_KEY);
    }
    bool KeyCompareLessThan(const StringIntDictionaryEntry *o) const {
      return *key() < *o->key();
    }
    int KeyCompareWithValue(const char *val) const {
      return strcmp(key()->c_str(), val);
    }
    int64_t value() const {
      return GetField<int64_t>(VT_VALUE, 0);
    }
    bool Verify(flatbuffers::Verifier &verifier) const {
      return VerifyTableStart(verifier) &&
             VerifyOffsetRequired(verifier, VT_KEY) &&
             verifier.VerifyString(key()) &&
             VerifyField<int64_t>(verifier, VT_VALUE) &&
             verifier.EndTable();
    }
  };
  
  struct StringIntDictionaryEntryBuilder {
    flatbuffers::FlatBufferBuilder &fbb_;
    flatbuffers::uoffset_t start_;
    void add_key(flatbuffers::Offset<flatbuffers::String> key) {
      fbb_.AddOffset(StringIntDictionaryEntry::VT_KEY, key);
    }
    void add_value(int64_t value) {
      fbb_.AddElement<int64_t>(StringIntDictionaryEntry::VT_VALUE, value, 0);
    }
    explicit StringIntDictionaryEntryBuilder(flatbuffers::FlatBufferBuilder &_fbb)
          : fbb_(_fbb) {
      start_ = fbb_.StartTable();
    }
    StringIntDictionaryEntryBuilder &operator=(const StringIntDictionaryEntryBuilder &);
    flatbuffers::Offset<StringIntDictionaryEntry> Finish() {
      const auto end = fbb_.EndTable(start_);
      auto o = flatbuffers::Offset<StringIntDictionaryEntry>(end);
      fbb_.Required(o, StringIntDictionaryEntry::VT_KEY);
      return o;
    }
  };
  
  inline flatbuffers::Offset<StringIntDictionaryEntry> CreateStringIntDictionaryEntry(
      flatbuffers::FlatBufferBuilder &_fbb,
      flatbuffers::Offset<flatbuffers::String> key = 0,
      int64_t value = 0) {
    StringIntDictionaryEntryBuilder builder_(_fbb);
    builder_.add_value(value);
    builder_.add_key(key);
    return builder_.Finish();
  }
  
  inline flatbuffers::Offset<StringIntDictionaryEntry> CreateStringIntDictionaryEntryDirect(
      flatbuffers::FlatBufferBuilder &_fbb,
      const char *key = nullptr,
      int64_t value = 0) {
    auto key__ = key ? _fbb.CreateString(key) : 0;
    return flatcollections::CreateStringIntDictionaryEntry(
        _fbb,
        key__,
        value);
  }
  
  inline const flatcollections::StringIntDictionary *GetStringIntDictionary(const void *buf) {
    return flatbuffers::GetRoot<flatcollections::StringIntDictionary>(buf);
  }
  
  inline const flatcollections::StringIntDictionary *GetSizePrefixedStringIntDictionary(const void *buf) {
    return flatbuffers::GetSizePrefixedRoot<flatcollections::StringIntDictionary>(buf);
  }
  
  inline bool VerifyStringIntDictionaryBuffer(
      flatbuffers::Verifier &verifier) {
    return verifier.VerifyBuffer<flatcollections::StringIntDictionary>(nullptr);
  }
  
  inline bool VerifySizePrefixedStringIntDictionaryBuffer(
      flatbuffers::Verifier &verifier) {
    return verifier.VerifySizePrefixedBuffer<flatcollections::StringIntDictionary>(nullptr);
  }
  
  inline void FinishStringIntDictionaryBuffer(
      flatbuffers::FlatBufferBuilder &fbb,
      flatbuffers::Offset<flatcollections::StringIntDictionary> root) {
    fbb.Finish(root);
  }
  
  inline void FinishSizePrefixedStringIntDictionaryBuffer(
      flatbuffers::FlatBufferBuilder &fbb,
      flatbuffers::Offset<flatcollections::StringIntDictionary> root) {
    fbb.FinishSizePrefixed(root);
  }
  
  }  // namespace flatcollections
  
  #endif  // FLATBUFFERS_GENERATED_SCHEMA_FLATCOLLECTIONS_H_
  