Esempio n. 1
0
template <class TSink, class InfoT> void Write(TSink & sink, InfoT const & i)
{
  rw::Write(sink, i.m_tag);

  WriteVarUint(sink, i.m_offset);
  WriteVarUint(sink, i.m_size);
}
Esempio n. 2
0
void WriteVersion(Writer & w, uint64_t secondsSinceEpoch)
{
  w.Write(MWM_PROLOG, ARRAY_SIZE(MWM_PROLOG));

  // write inner data version
  WriteVarUint(w, static_cast<uint32_t>(Format::lastFormat));
  WriteVarUint(w, secondsSinceEpoch);
}
Esempio n. 3
0
void WriteVersion(Writer & w, uint32_t versionDate)
{
  w.Write(MWM_PROLOG, ARRAY_SIZE(MWM_PROLOG));

  // write inner data version
  WriteVarUint(w, static_cast<uint32_t>(lastFormat));
  WriteVarUint(w, versionDate);
}
Esempio n. 4
0
 void Serialize(TSink & sink) const
 {
   auto const sz = static_cast<uint32_t>(m_metadata.size());
   WriteVarUint(sink, sz);
   for (auto const & it : m_metadata)
   {
     WriteVarUint(sink, static_cast<uint32_t>(it.first));
     utils::WriteString(sink, it.second);
   }
 }
Esempio n. 5
0
 std::enable_if_t<std::is_same<T, uint32_t>::value || std::is_same<T, uint64_t>::value> operator()(
     T t, char const * /* name */ = nullptr) const
 {
   WriteVarUint(m_sink, t);
 }