c: nanopb (protobuf) 重复字段的默认值

c: default values for repeated fields with nanopb (protobuf)

我正在尝试创建一条消息,其中包含一个具有一些默认值的重复字段。 我开始很慢,重复一个简单的 int (我的最终目标是重复消息,所有字段都有一些默认值)

所以,开始我的原型是:

syntax = "proto2"
import "google/protobuf/descriptor.proto";
import "nanopb.proto";

message MyDefault {
  repeated int32 default = 1 [(nanopb).max_count = 3];
}

extend google.protobuf.FieldOptions {
  optional MyDefault my_default = 1234;
}

message M {
  repeated int32 x = 1 [(my_default) = {default: [1, 2, 3]}, (nanopb).max_count = 3];
}

protobuf 已编译,但没有跟踪到我的默认值。

nanopb目前没有重复字段的默认值。据我所知,它们也不存在于其他 protobuf 实现中。

其他一些 protobuf 库确实提供对自定义字段选项的访问,但 nanopb 目前不提供。