protobuf 3 any 中的原始类型

Mar*_*rko 4 c++ protocol-buffers

我正在研究 protobuf 3 的新功能,想知道是否有办法将 int32 或 string 等原始类型放入 google.protobuf.Any 中。
我知道我可以直接设置 type_url 和值,因为它们是字符串,但这会破坏任何使用someAny.Is<SomeType>(). 在这种情况下,使用 BinaryToJsonString 写入 JSON 也不起作用。

或者还有其他优雅的方式来结合原语和消息吗?(oneofs 不是我正在寻找的;)

Mar*_*rko 5

显然没有办法直接做到这一点。我们现在使用来自 google.protobuf.wrappers.proto 的包装器消息并将它们打包到 Any 中。