Calculate the serialized size of a single oneof message field, including the space needed by the preceding tag. Returns 0 if the oneof field isn't selected or is not set.
Calculate the serialized size of repeated message fields, which may consist of any number of values (including 0). Includes the space needed by the preceding tags (as needed).
Calculate the serialized size of a single optional message field, including the space needed by the preceding tag. Returns 0 if the optional field isn't set.
Calculate the serialized size of a single unlabeled message field, including the space needed by the preceding tag. Returns 0 if the field isn't set or if it is set to a "zeroish" value (null pointer or 0 for numerical values). Unlabeled fields are supported only in proto3.