23struct BufferFormatter<USERVER_NAMESPACE::
utils::datetime::TimeOfDay<Duration>>
24 : detail::BufferFormatterBase<USERVER_NAMESPACE::
utils::datetime::TimeOfDay<Duration>> {
25 using BaseType = detail::BufferFormatterBase<USERVER_NAMESPACE::
utils::datetime::TimeOfDay<Duration>>;
26 using BaseType::BaseType;
28 template <
typename Buffer>
29 void operator()(
const UserTypes& types, Buffer& buffer)
const {
30 const Bigint usec = std::chrono::duration_cast<std::chrono::microseconds>(
this->value.SinceMidnight()).count();
31 io::WriteBuffer(types, buffer, usec);
37struct BufferParser<USERVER_NAMESPACE::
utils::datetime::TimeOfDay<Duration>>
38 : detail::BufferParserBase<USERVER_NAMESPACE::
utils::datetime::TimeOfDay<Duration>> {
39 using BaseType = detail::BufferParserBase<USERVER_NAMESPACE::
utils::datetime::TimeOfDay<Duration>>;
40 using ValueType =
typename BaseType::ValueType;
41 using BaseType::BaseType;
46 this->value = ValueType{std::chrono::duration_cast<Duration>(std::chrono::microseconds{usec})};