bool Encoder::encode()

in hessian2/basic_codec/map_codec.cc [115:127]


bool Encoder::encode(const UntypedMapObject& value) {
  values_ref_.emplace(&value, values_ref_.size());
  auto untyped_map = value.toUntypedMap();
  ABSL_ASSERT(untyped_map.has_value());
  auto& untyped_map_value = untyped_map.value().get();
  writer_->writeByte('H');
  for (const auto& elem : untyped_map_value) {
    encode<Object>(*elem.first);
    encode<Object>(*elem.second);
  }
  writer_->writeByte('Z');
  return true;
}