6#ifndef PB_DECODE_H_INCLUDED
7#define PB_DECODE_H_INCLUDED
49#define PB_ISTREAM_EMPTY {0,0,0,0}
51#define PB_ISTREAM_EMPTY {0,0,0}
74bool pb_decode(pb_istream_t *stream,
const pb_msgdesc_t *fields,
void *dest_struct);
99#define PB_DECODE_NOINIT 0x01U
100#define PB_DECODE_DELIMITED 0x02U
101#define PB_DECODE_NULLTERMINATED 0x04U
102bool pb_decode_ex(pb_istream_t *stream,
const pb_msgdesc_t *fields,
void *dest_struct,
unsigned int flags);
105#define pb_decode_noinit(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_NOINIT)
106#define pb_decode_delimited(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_DELIMITED)
107#define pb_decode_delimited_noinit(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_DELIMITED | PB_DECODE_NOINIT)
108#define pb_decode_nullterminated(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_NULLTERMINATED)
114void pb_release(
const pb_msgdesc_t *fields,
void *dest_struct);
149#ifndef PB_WITHOUT_64BIT
152#define pb_decode_varint pb_decode_varint32
164#ifndef PB_WITHOUT_64BIT
174#ifndef PB_WITHOUT_64BIT
180#ifdef PB_CONVERT_DOUBLE_FLOAT
182bool pb_decode_double_as_float(pb_istream_t *stream,
float *dest);
bool pb_read(pb_istream_t *stream, pb_byte_t *buf, size_t count)
bool pb_decode_varint(pb_istream_t *stream, uint64_t *dest)
bool pb_decode(pb_istream_t *stream, const pb_msgdesc_t *fields, void *dest_struct)
void pb_release(const pb_msgdesc_t *fields, void *dest_struct)
bool pb_decode_fixed32(pb_istream_t *stream, void *dest)
bool pb_decode_varint32(pb_istream_t *stream, uint32_t *dest)
bool pb_make_string_substream(pb_istream_t *stream, pb_istream_t *substream)
pb_istream_t pb_istream_from_buffer(const pb_byte_t *buf, size_t msglen)
bool pb_skip_field(pb_istream_t *stream, pb_wire_type_t wire_type)
bool pb_decode_bool(pb_istream_t *stream, bool *dest)
bool pb_decode_ex(pb_istream_t *stream, const pb_msgdesc_t *fields, void *dest_struct, unsigned int flags)
bool pb_close_string_substream(pb_istream_t *stream, pb_istream_t *substream)
bool pb_decode_fixed64(pb_istream_t *stream, void *dest)
bool pb_decode_svarint(pb_istream_t *stream, int64_t *dest)
bool pb_decode_tag(pb_istream_t *stream, pb_wire_type_t *wire_type, uint32_t *tag, bool *eof)
unsigned long long uint64_t
bool(* callback)(pb_istream_t *stream, pb_byte_t *buf, size_t count)