diff options
author | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2014-04-05 11:26:39 +0300 |
---|---|---|
committer | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2014-04-05 11:26:39 +0300 |
commit | b63e582bdb34b4727a8eb551fc72ee0476047a46 (patch) | |
tree | 37e19df37e51132052c54ce9b46d1cc9b16b0698 /pb_encode.h | |
parent | e5b855fec5d2977971f96d817728c7a3ee8077b2 (diff) |
Add a convenience function pb_get_encoded_size()
There is minimal size penalty from this, and it is probably much more
intuitive to use than PB_OSTREAM_SIZING itself.
This has been suggested before also, but I ended up refusing it back
them. Reconsidering it now, I see that an intuitive API is much better
than any amount of documentation explaining a non-intuitive API.
Update issue 16
Status: FixedInGit
Diffstat (limited to 'pb_encode.h')
-rw-r--r-- | pb_encode.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/pb_encode.h b/pb_encode.h index 900994aa..f82bac8f 100644 --- a/pb_encode.h +++ b/pb_encode.h @@ -71,6 +71,10 @@ bool pb_encode(pb_ostream_t *stream, const pb_field_t fields[], const void *src_ */ bool pb_encode_delimited(pb_ostream_t *stream, const pb_field_t fields[], const void *src_struct); +/* Encode the message to get the size of the encoded data, but do not store + * the data. */ +bool pb_get_encoded_size(size_t *size, const pb_field_t fields[], const void *src_struct); + /************************************** * Functions for manipulating streams * **************************************/ |