29#ifndef PROTOCORE_CODEC_H
30#define PROTOCORE_CODEC_H
115const pc_codec *pc_codec_msgpack(
void);
pc_codec_type
The next item's type, reported by pc_codec::peek without consuming it.
@ PC_CODEC_INVALID
end of buffer, a prior error, or an item this format does not carry
User-facing configuration for ProtoCore.
A byte region whose run length is bound in both directions.
A wire encoding: the ten writes, the peek, and the nine reads.
void(* put_uint)(pc_span *w, uint64_t v)
bool(* get_null)(pc_cspan *r)
bool(* get_bytes)(pc_cspan *r, const uint8_t **out, size_t *len)
void(* put_label)(pc_span *w, const char *name, int64_t num)
Emit a map key, given both spellings of it.
bool(* get_bool)(pc_cspan *r, bool *out)
bool(* get_float)(pc_cspan *r, float *out)
void(* put_bytes)(pc_span *w, const uint8_t *data, size_t len)
void(* put_float)(pc_span *w, float f)
bool(* get_int)(pc_cspan *r, int64_t *out)
void(* put_array)(pc_span *w, size_t count)
void(* put_null)(pc_span *w)
void(* put_int)(pc_span *w, int64_t v)
bool(* get_str)(pc_cspan *r, const char **out, size_t *len)
bool(* get_array)(pc_cspan *r, size_t *count)
pc_codec_type(* peek)(pc_cspan *r)
bool(* get_map)(pc_cspan *r, size_t *count)
bool(* get_uint)(pc_cspan *r, uint64_t *out)
void(* put_map)(pc_span *w, size_t count)
void(* put_bool)(pc_span *w, bool b)
void(* put_str_n)(pc_span *w, const char *s, size_t len)
void(* put_str)(pc_span *w, const char *s)
A writable byte region: the storage, the capacity that belongs to it, and what has been produced into...