X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=util%2Fstring-util.h;h=80d24d1c1053035b81144ea51e3ac1934b3d4be7;hp=8a3ad19eae6e9808a319aec043e78089b792d41e;hb=23b8ed610a13802f0afa5fa70bc8faa04cf48a7f;hpb=029790d3ff6e9fccfed2214efac777b8c438e318 diff --git a/util/string-util.h b/util/string-util.h index 8a3ad19e..80d24d1c 100644 --- a/util/string-util.h +++ b/util/string-util.h @@ -3,6 +3,10 @@ #include +#ifdef __cplusplus +extern "C" { +#endif + /* like strtok(3), but without state, and doesn't modify s. Return * value is indicated by pointer and length, not null terminator. * @@ -19,6 +23,9 @@ char *strtok_len (char *s, const char *delim, size_t *len); +/* Const version of strtok_len. */ +const char *strtok_len_c (const char *s, const char *delim, size_t *len); + /* Return a talloced string with str sanitized. * * Whitespace characters (tabs and newlines) are replaced with spaces, @@ -57,4 +64,14 @@ int parse_boolean_term (void *ctx, const char *str, char **prefix_out, char **term_out); +/* GLib GEqualFunc compatible strcasecmp wrapper */ +int strcase_equal (const void *a, const void *b); + +/* GLib GHashFunc compatible case insensitive hash function */ +unsigned int strcase_hash (const void *ptr); + +#ifdef __cplusplus +} +#endif + #endif