10#include <userver/formats/common/type.hpp>
11#include <userver/formats/serialize/to.hpp>
12#include <userver/utils/meta.hpp>
14namespace boost::uuids {
18USERVER_NAMESPACE_BEGIN
24template <
typename T,
typename Value>
30 for (
const auto& item : value) {
32 builder.PushBack(
static_cast<
const meta::RangeValueType<T>&>(item));
34 return builder.ExtractValue();
38template <
typename T,
typename Value>
42 for (
const auto& [key, value] : value) {
45 return builder.ExtractValue();
49template <
typename T,
typename Value>
51 if (!value)
return {};
53 return typename Value::Builder(*value).ExtractValue();