Proto3 doesn't have a concept of field presence for singular primitive fields, so for example there is no difference between an integer field set to 0 and that same field being unset entirely. As a result there shouldn't be has_foo() methods for singular primitive fields, and that is how Google's protobuf libraries work with proto3. There are has_() methods for embedded message fields, though (since those are not considered primitive fields).
On Sun, Aug 11, 2019 at 11:08 PM Denis Feklushkin < [email protected]> wrote: > Hello! > > There is a Protobuff 3 implementation for D: > https://github.com/dcarp/protobuf-d/ > > Its author and I am diverged in the interpretation of the Proto3 > documentation: > > Is it necessary to implement something like has_foo() method as in > Googles's Protobuf C++ and Dart libraries or it is violates protocol > version 3 and leaved in official libraries only for backward compatibility? > > Can someone reasonably support this or that opinion? > > Discussion beginned here: > https://github.com/dcarp/protobuf-d/issues/21 > > Thanks! > > -- > 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 view this discussion on the web visit > https://groups.google.com/d/msgid/protobuf/3f826c6a-c67e-4291-9b36-4922180dd7e3%40googlegroups.com > <https://groups.google.com/d/msgid/protobuf/3f826c6a-c67e-4291-9b36-4922180dd7e3%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/protobuf/CADqAXr644Wd_ursLboE9ujHmHJmk5BpE3M0XGrepJir5daH2Dg%40mail.gmail.com.
