X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;ds=sidebyside;f=sprinter.h;h=59776a9c7e476522fc6c21b48d34cfb0f8a1ea49;hb=327f30a8f398570a51f9c49cc092c4a95c53ef39;hp=5f4317570a059814922402bbe89643e6c7db00b0;hpb=14883b07003b9ed4223cd8f2c03b301fddae07bd;p=notmuch diff --git a/sprinter.h b/sprinter.h index 5f431757..59776a9c 100644 --- a/sprinter.h +++ b/sprinter.h @@ -27,7 +27,9 @@ typedef struct sprinter { * a list or map, followed or preceded by separators). For string * and string_len, the char * must be UTF-8 encoded. string_len * allows non-terminated strings and strings with embedded NULs - * (though the handling of the latter is format-dependent). + * (though the handling of the latter is format-dependent). For + * string (but not string_len) the string pointer passed may be + * NULL. */ void (*string) (struct sprinter *, const char *); void (*string_len) (struct sprinter *, const char *, size_t); @@ -68,4 +70,8 @@ sprinter_text_create (const void *ctx, FILE *stream); struct sprinter * sprinter_json_create (const void *ctx, FILE *stream); +/* Create a new structure printer that emits S-Expressions. */ +struct sprinter * +sprinter_sexp_create (const void *ctx, FILE *stream); + #endif // NOTMUCH_SPRINTER_H