X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=sprinter.h;h=912a5262a56756add44b41843ad32bb18446ad75;hp=6680d41958e209e0e30705cb153297809833810f;hb=c158201ee217740cb1b64858df8c7d39cf7793d0;hpb=36522fca1cac6ca23c2c4c0280e3e20e96f7bfbb diff --git a/sprinter.h b/sprinter.h index 6680d419..912a5262 100644 --- a/sprinter.h +++ b/sprinter.h @@ -23,11 +23,16 @@ typedef struct sprinter { */ void (*end) (struct sprinter *); - /* Print one string/integer/boolean/null element (possibly inside a - * list or map, followed or preceded by separators). - * For string, the char * must be UTF-8 encoded. + /* Print one string/integer/boolean/null element (possibly inside + * 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). 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); void (*integer) (struct sprinter *, int); void (*boolean) (struct sprinter *, notmuch_bool_t); void (*null) (struct sprinter *);