Polish the streambuffer API a bit

This commit is contained in:
2021-07-19 17:32:24 -04:00
parent f8f8a9843f
commit 08ca274444
5 changed files with 303 additions and 195 deletions

View File

@@ -84,7 +84,7 @@ int64_t IdGlobalPool::alloc_id_for_thread(lua_State *L) {
void IdGlobalPool::serialize(StreamBuffer *sb) {
sb->write_int64(next_batch_);
sb->write_int64(next_id_);
sb->write_size(salvaged_.size());
sb->write_uint32(salvaged_.size());
for (int64_t batch : salvaged_) {
sb->write_int64(batch);
}
@@ -93,7 +93,7 @@ void IdGlobalPool::serialize(StreamBuffer *sb) {
void IdGlobalPool::deserialize(StreamBuffer *sb) {
next_batch_ = sb->read_int64();
next_id_ = sb->read_int64();
size_t salvaged_size = sb->read_size();
uint32_t salvaged_size = sb->read_uint32();
salvaged_.resize(salvaged_size);
for (int i=0; i < int(salvaged_size); i++) {
salvaged_[i] = sb->read_int64();