On Wed, Oct 19, 2016 at 4:03 AM, Saurabh Kumar <[email protected]>
wrote:
> Hi,
>
> This question is regarding inheritance in protobuf C++ library. I will
> explain what I am looking for with a concrete example.
>
> I have this message definition:
>
> message MSG1
> {
> required string account = 0;
> required string symbol = 1;
> }
>
> Now I want to extend this message and define a new message like this:
> message MSG2
> {
> required string account = 0;
> required string symbol = 1;
> required int32 id = 2;
> }
>
> You will notice that first two fields of MSG2 are exactly same as MSG1
> (they are intended to be like that). But here I had to copy paste the
> common fields again.
> Can I do something like this?
>
> message MSG2 extends MSG1
> {
> required int32 id = 2;
> }
>
> I have already thought about using it like:
> message MSG2
> {
> required MSG1 msg1 = 0;
> required int32 id = 2;
> }
> But this is not really what I want.
>
> What's the best way to achieve this?
>
Protobuf doesn't support inheritance. Having a common header and using
composition is the best solution.
>
> Thanks,
> Saurabh
>
> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.