Pārlūkot izejas kodu

add size method for fields

main
ArcueidType pirms 8 mēnešiem
vecāks
revīzija
339d0a57c0
2 mainītis faili ar 5 papildinājumiem un 1 dzēšanām
  1. +2
    -1
      db/fields.cc
  2. +3
    -0
      db/fields.h

+ 2
- 1
db/fields.cc Parādīt failu

@ -7,6 +7,7 @@ namespace leveldb {
assert(!field_array.empty());
for (const auto& field : field_array) {
this->_fields[field.first] = field.second;
this->size_ += field.first.size() + field.second.size();
}
}
@ -25,7 +26,7 @@ namespace leveldb {
Slice value = Slice(field.data() + name_size, field.size() - name_size);
this->_fields[name.ToString()] = value.ToString();
this->size_ += name.ToString().size() + value.ToString().size();
fields = Slice(fields.data() + field_size, fields.size() - field_size);
}
}

+ 3
- 0
db/fields.h Parādīt failu

@ -33,8 +33,11 @@ namespace leveldb {
// Fields编码为存入LevelDB的Value
std::string Serialize() const;
uint64_t size() const { return size_; }
private:
std::map<std::string, std::string> _fields;
uint64_t size_ = 0;
};
} // namespace leveldb
#endif //STORAGE_LEVELDB_FIELDS_H_

Notiek ielāde…
Atcelt
Saglabāt