要するに、任意のタイプの別のメッセージを含むprotobufメッセージを定義する方法はありますか?何かのようなもの:
message OuterMsg {
required int32 type = 1;
required Message nestedMsg = 2; //Any sort of message can go here
}
さまざまなprotobuf実装では、コンパイルされたメッセージが共通のMessage
基本クラスから拡張されるため、これを行う方法があると思います。
それ以外の場合は、次のようなあらゆる種類のメッセージに共通のベースメッセージを作成する必要があると思います。
message BaseNestedMessage {
extensions 1 to max;
}
そしてします
message OuterMessage {
required int32 type = 1;
required BaseNestedMessage nestedMsg = 2;
}
これを達成する唯一の方法ですか?