Implement error message support for the encoder side.

Update issue 7
Status: FixedInGit
This commit is contained in:
Petteri Aimonen
2013-03-09 14:49:15 +02:00
parent 9b6641ac64
commit 0352647118
5 changed files with 41 additions and 15 deletions

View File

@@ -46,11 +46,22 @@ struct _pb_ostream_t
void *state; /* Free field for use by callback implementation */
size_t max_size; /* Limit number of output bytes written (or use SIZE_MAX). */
size_t bytes_written;
#ifndef PB_NO_ERRMSG
const char *errmsg;
#endif
};
pb_ostream_t pb_ostream_from_buffer(uint8_t *buf, size_t bufsize);
bool pb_write(pb_ostream_t *stream, const uint8_t *buf, size_t count);
/* Stream type for use in computing message sizes */
#ifndef PB_NO_ERRMSG
#define PB_OSTREAM_SIZING {0,0,0,0,0}
#else
#define PB_OSTREAM_SIZING {0,0,0,0}
#endif
/* Encode struct to given output stream.
* Returns true on success, false on any failure.
* The actual struct pointed to by src_struct must match the description in fields.