void writeDate()

in hessian2/basic_codec/date_codec.cc [29:41]


void writeDate(WriterPtr &writer, const T &value) {
  int64_t value_in_min =
      std::chrono::duration_cast<std::chrono::minutes>(value).count();
  int64_t value_in_ms =
      std::chrono::duration_cast<std::chrono::milliseconds>(value).count();
  if (value_in_min * 60000 == value_in_ms) {
    writer->writeByte(0x4b);
    writer->writeBE<int32_t>(value_in_min);
  } else {
    writer->writeByte(0x4a);
    writer->writeBE<int64_t>(value_in_ms);
  }
}