How do they handle collections (repeated, non packed) in this case?
The absence of the tag is not conclusive.
Actually, even packed collection (and strings, and binary data) suffer from 
that, as you are "expected" to not include a packed collection with zero 
bytes.
 

On Saturday, March 26, 2016 at 1:08:23 PM UTC-7, Ilia Mirkin wrote:
>
> Encoding is identical... just the API is different. In proto2, you 
> have (in C++) FooMessage->has_field() which will tell you whether a 
> field was present in the encoded version (or has been set prior if 
> you're building a new message). The Java API has something rather 
> similar... hasField() I think? 
>
> On Sat, Mar 26, 2016 at 4:00 PM, Yoav H <joe.dai...@gmail.com 
> <javascript:>> wrote: 
> > Thanks all, 
> > 
> > Do you know where I can find the proto2 encoding guide? 
> > The proto site has only the proto3 encoding described. 
> > 
> > On Saturday, March 26, 2016 at 12:21:39 PM UTC-7, Tim Kientzle wrote: 
> >> 
> >> 
> >> > On Mar 26, 2016, at 11:43 AM, Yoav H <joe.dai...@gmail.com> wrote: 
> >> > 
> >> > Hi, 
> >> > 
> >> > I wanted ask regarding the decision to populate fields with default 
> >> > values, even if they do not appear in the encoded message. 
> >> > If I want to send a "patch" message, where I want to update just the 
> >> > provided fields, how can I do that with protobuf (without adding 
> IsXXXSet 
> >> > for every field)? 
> >> > 
> >> > Why not add another type, representing a default value? 
> >> > So the schematics would be, if the field is missing, it is null, and 
> if 
> >> > the field exists, but with this "missing value" type, it will get the 
> >> > default value? 
> >> 
> >> As Ilia pointed out, proto2 still exists, is still supported, and can 
> be 
> >> used for 
> >> cases where you require these particular semantics. 
> >> 
> >> For proto3, you might look at google.protobuf.FieldMask, which is a new 
> >> standard message (one of the "well-known types") specifically designed 
> >> to store a set of field names.  You might be able to achieve what you 
> want 
> >> by 
> >> providing a FieldMask with your data listing the specific fields to 
> >> be updated. 
> >> 
> >> Tim 
> >> 
> >> 
> > -- 
> > 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 protobuf+u...@googlegroups.com <javascript:>. 
> > To post to this group, send email to prot...@googlegroups.com 
> <javascript:>. 
> > 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 protobuf+unsubscr...@googlegroups.com.
To post to this group, send email to protobuf@googlegroups.com.
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to