From: Timo Sirainen Date: Sat, 30 Apr 2016 11:03:32 +0000 (+0300) Subject: lib: Make str_*() inline which are simple buffer_* wrappers. X-Git-Tag: 2.3.0.rc1~3849 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=53e9cbd970106be179f7586151fa4e434f7084f1;p=thirdparty%2Fdovecot%2Fcore.git lib: Make str_*() inline which are simple buffer_* wrappers. --- diff --git a/src/lib/str.c b/src/lib/str.c index 0b54a0252b..6e6066839e 100644 --- a/src/lib/str.c +++ b/src/lib/str.c @@ -67,22 +67,12 @@ const char *str_c(string_t *str) return str->data; } -const unsigned char *str_data(const string_t *str) -{ - return str->data; -} - char *str_c_modifiable(string_t *str) { str_add_nul(str); return buffer_get_modifiable_data(str, NULL); } -size_t str_len(const string_t *str) -{ - return str->used; -} - bool str_equals(const string_t *str1, const string_t *str2) { if (str1->used != str2->used) @@ -91,11 +81,6 @@ bool str_equals(const string_t *str1, const string_t *str2) return memcmp(str1->data, str2->data, str1->used) == 0; } -void str_append(string_t *str, const char *cstr) -{ - buffer_append(str, cstr, strlen(cstr)); -} - void str_append_n(string_t *str, const void *cstr, size_t max_len) { size_t len; @@ -107,21 +92,6 @@ void str_append_n(string_t *str, const void *cstr, size_t max_len) buffer_append(str, cstr, len); } -void str_append_data(string_t *str, const void *data, size_t len) -{ - buffer_append(str, data, len); -} - -void str_append_c(string_t *str, unsigned char chr) -{ - buffer_append_c(str, chr); -} - -void str_append_str(string_t *dest, const string_t *src) -{ - buffer_append(dest, src->data, src->used); -} - void str_printfa(string_t *str, const char *fmt, ...) { va_list args; @@ -171,18 +141,3 @@ void str_vprintfa(string_t *str, const char *fmt, va_list args) /* drop the unused data, including terminating NUL */ buffer_set_used_size(str, pos + ret); } - -void str_insert(string_t *str, size_t pos, const char *cstr) -{ - buffer_insert(str, pos, cstr, strlen(cstr)); -} - -void str_delete(string_t *str, size_t pos, size_t len) -{ - buffer_delete(str, pos, len); -} - -void str_truncate(string_t *str, size_t len) -{ - buffer_set_used_size(str, len); -} diff --git a/src/lib/str.h b/src/lib/str.h index 431b7ee2ad..42c7680959 100644 --- a/src/lib/str.h +++ b/src/lib/str.h @@ -1,6 +1,8 @@ #ifndef STR_H #define STR_H +#include "buffer.h" + string_t *str_new(pool_t pool, size_t initial_size); string_t *t_str_new(size_t initial_size); /* Allocate a constant string using the given str as the input data. @@ -12,17 +14,39 @@ void str_free(string_t **str); char *str_free_without_data(string_t **str); const char *str_c(string_t *str); -const unsigned char *str_data(const string_t *str) ATTR_PURE; char *str_c_modifiable(string_t *str); -size_t str_len(const string_t *str) ATTR_PURE; bool str_equals(const string_t *str1, const string_t *str2) ATTR_PURE; +static inline const unsigned char *str_data(const string_t *str) +{ + return str->data; +} +static inline size_t str_len(const string_t *str) +{ + return str->used; +} + /* Append string/character */ -void str_append(string_t *str, const char *cstr); void str_append_n(string_t *str, const void *cstr, size_t max_len); -void str_append_data(string_t *str, const void *data, size_t len); -void str_append_c(string_t *str, unsigned char chr); -void str_append_str(string_t *dest, const string_t *src); + +static inline void str_append(string_t *str, const char *cstr) +{ + buffer_append(str, cstr, strlen(cstr)); +} +static inline void str_append_data(string_t *str, const void *data, size_t len) +{ + buffer_append(str, data, len); +} + +static inline void str_append_c(string_t *str, unsigned char chr) +{ + buffer_append_c(str, chr); +} + +static inline void str_append_str(string_t *dest, const string_t *src) +{ + buffer_append(dest, src->data, src->used); +} /* Append printf()-like data */ void str_printfa(string_t *str, const char *fmt, ...) @@ -30,8 +54,19 @@ void str_printfa(string_t *str, const char *fmt, ...) void str_vprintfa(string_t *str, const char *fmt, va_list args) ATTR_FORMAT(2, 0); -void str_insert(string_t *str, size_t pos, const char *cstr); -void str_delete(string_t *str, size_t pos, size_t len); -void str_truncate(string_t *str, size_t len); +static inline void str_insert(string_t *str, size_t pos, const char *cstr) +{ + buffer_insert(str, pos, cstr, strlen(cstr)); +} + +static inline void str_delete(string_t *str, size_t pos, size_t len) +{ + buffer_delete(str, pos, len); +} + +static inline void str_truncate(string_t *str, size_t len) +{ + buffer_set_used_size(str, len); +} #endif