1#include <userver/proto-structs/io/userver/formats/json/object_conv.hpp>
3#include <google/protobuf/struct.pb.h>
5#include <userver/proto-structs/io/context.hpp>
6#include <userver/protobuf/json/convert.hpp>
10namespace proto_structs::io {
12formats::json::Object ReadProtoStruct(
14 To<formats::json::Object>,
15 const ::google::protobuf::Struct& msg
18 return formats::json::Object{protobuf::json::MessageToJson(msg, protobuf::json::PrintOptions{})};
19 }
catch (
const protobuf::json::PrintError& e) {
20 ctx.AddError(e.what());
21 return formats::json::Object{};
25void WriteProtoStruct(WriteContext&,
const formats::json::Object& obj, ::google::protobuf::Struct& msg) {
26 protobuf::json::JsonToMessage(obj.GetValue(), msg, protobuf::json::ParseOptions{});