Thanks for the reply. What exactly do you mean by common header? On Thu, 20 Oct 2016 at 1:06 AM, Feng Xiao <[email protected]> wrote:
> > > 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.
