diff options
Diffstat (limited to 'util/string-util.h')
-rw-r--r-- | util/string-util.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/util/string-util.h b/util/string-util.h index ac7676c8..719c276a 100644 --- a/util/string-util.h +++ b/util/string-util.h @@ -19,4 +19,19 @@ char *strtok_len (char *s, const char *delim, size_t *len); +/* Construct a boolean term query with the specified prefix (e.g., + * "id") and search term, quoting term as necessary. Specifically, if + * term contains any non-printable ASCII characters, non-ASCII + * characters, close parenthesis or double quotes, it will be enclosed + * in double quotes and any internal double quotes will be doubled + * (e.g. a"b -> "a""b"). The result will be a valid notmuch query and + * can be parsed by parse_boolean_term. + * + * Output is into buf; it may be talloc_realloced. + * Return: 0 on success, -1 on error. errno will be set to ENOMEM if + * there is an allocation failure. + */ +int make_boolean_term (void *talloc_ctx, const char *prefix, const char *term, + char **buf, size_t *len); + #endif |