X-Git-Url: https://git.draconx.ca/gitweb/cdecl99.git/blobdiff_plain/7ec517ce4d3b660e64133c2e67ef7686daec74e2..0b2a2978f09f5d9b56d8655dd60eaffbe9006b7a:/src/cdecl-internal.h diff --git a/src/cdecl-internal.h b/src/cdecl-internal.h index e0052bd..0064617 100644 --- a/src/cdecl-internal.h +++ b/src/cdecl-internal.h @@ -40,10 +40,14 @@ void cdecl__errmsg(unsigned msg); struct cdecl_declspec *cdecl__normalize_specs(struct cdecl_declspec *specs); -size_t cdecl__advance(char **buf, size_t *n, size_t amount); - -size_t cdecl__emit(char **dst, size_t *dstlen, const char *src); -size_t cdecl__emit_specs(char **dst, size_t *dstlen, +struct output_state { + char *dst; + size_t dstlen; +}; + +size_t cdecl__advance(struct output_state *dst, size_t amount); +size_t cdecl__emit(struct output_state *dst, const char *src); +size_t cdecl__emit_specs(struct output_state *dst, struct cdecl_declspec *s, unsigned mask);