From 9a26e7043fa95b4c9ee4576ce8c0ac15668e695e Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Thu, 2 Jan 2025 13:54:54 +0100 Subject: [PATCH] string-desc, xstring-desc, string-desc-quotearg: Rename functions. * lib/string-desc.h (sd_equals): Renamed from string_desc_equals. (sd_startswith): Renamed from string_desc_startswith. (sd_endswith): Renamed from string_desc_endswith. (sd_cmp): Renamed from string_desc_cmp. (sd_c_casecmp): Renamed from string_desc_c_casecmp. (sd_index): Renamed from string_desc_index. (sd_last_index): Renamed from string_desc_last_index. (sd_contains): Renamed from string_desc_contains. (sd_new_empty): Renamed from string_desc_new_empty. (sd_new_addr): Renamed from string_desc_new_addr. (sd_from_c): Renamed from string_desc_from_c. (sd_substring): Renamed from string_desc_substring. (sd_write): Renamed from string_desc_write. (sd_fwrite): Renamed from string_desc_fwrite. (sd_new): Renamed from string_desc_new. (sd_new_filled): Renamed from string_desc_new_filled. (sd_copy): Renamed from string_desc_copy. (sd_concat): Renamed from string_desc_concat. (sd_c): Renamed from string_desc_c. (sd_set_char_at): Renamed from string_desc_set_char_at. (sd_fill): Renamed from string_desc_fill. (sd_overwrite): Renamed from string_desc_overwrite. (sd_free): Renamed from string_desc_free. (sd_length): Renamed from string_desc_length. (sd_char_at): Renamed from string_desc_char_at. (sd_data): Renamed from string_desc_data. (sd_is_empty): Renamed from string_desc_is_empty. * lib/string-desc.c (sd_equals): Renamed from string_desc_equals. (sd_startswith): Renamed from string_desc_startswith. (sd_endswith): Renamed from string_desc_endswith. (sd_cmp): Renamed from string_desc_cmp. (sd_c_casecmp): Renamed from string_desc_c_casecmp. (sd_index): Renamed from string_desc_index. (sd_last_index): Renamed from string_desc_last_index. (sd_new_empty): Renamed from string_desc_new_empty. (sd_new_addr): Renamed from string_desc_new_addr. (sd_from_c): Renamed from string_desc_from_c. (sd_substring): Renamed from string_desc_substring. (sd_write): Renamed from string_desc_write. (sd_fwrite): Renamed from string_desc_fwrite. (sd_new): Renamed from string_desc_new. (sd_new_filled): Renamed from string_desc_new_filled. (sd_copy): Renamed from string_desc_copy. (sd_concat): Renamed from string_desc_concat. (sd_c): Renamed from string_desc_c. (sd_set_char_at): Renamed from string_desc_set_char_at. (sd_fill): Renamed from string_desc_fill. (sd_overwrite): Renamed from string_desc_overwrite. (sd_free): Renamed from string_desc_free. * lib/xstring-desc.h (xsd_concat): Renamed from xstring_desc_concat. (xsd_new): Renamed from xstring_desc_new. (xsd_new_filled): Renamed from xstring_desc_new_filled. (xsd_copy): Renamed from xstring_desc_copy. (xsd_c): Renamed from xstring_desc_c. * lib/xstring-desc.c (xsd_concat): Renamed from xstring_desc_concat. * lib/string-desc-quotearg.h (sd_quotearg_buffer): Renamed from string_desc_quotearg_buffer. (sd_quotearg_alloc): Renamed from string_desc_quotearg_alloc. (sd_quotearg_n): Renamed from string_desc_quotearg_n. (sd_quotearg): Renamed from string_desc_quotearg. (sd_quotearg_n_style): Renamed from string_desc_quotearg_n_style. (sd_quotearg_style): Renamed from string_desc_quotearg_style. (sd_quotearg_char): Renamed from string_desc_quotearg_char. (sd_quotearg_colon): Renamed from string_desc_quotearg_colon. (sd_quotearg_n_custom): Renamed from string_desc_quotearg_n_custom. (sd_quotearg_custom): Renamed from sd_quotearg_n_custom. * lib/string-desc-contains.c (sd_contains): Renamed from string_desc_contains. * lib/string-buffer.h: Update. * lib/string-buffer.c (sb_append_desc, sb_contents, sb_dupfree): Update. * lib/xstring-buffer.c (sb_xdupfree): Update. * lib/sf-istream.c (sf_istream_init_from_string_desc): Update. * tests/test-string-desc.c (main): Update. * tests/test-string-desc.sh: Update. * tests/test-xstring-desc.c (main): Update. * tests/test-string-desc-quotearg.c (main): Update. * tests/test-string-buffer.c (main): Update. * tests/test-sf-istream.c (main): Update. * tests/test-sfl-istream.c (main): Update. * doc/string-desc.texi: Update. * doc/strings.texi: Update. * NEWS: Mention the change. --- ChangeLog | 86 +++++++++ NEWS | 4 + doc/string-desc.texi | 4 +- doc/strings.texi | 18 +- lib/sf-istream.c | 4 +- lib/string-buffer.c | 12 +- lib/string-buffer.h | 4 +- lib/string-desc-contains.c | 2 +- lib/string-desc-quotearg.h | 114 ++++++------ lib/string-desc.c | 52 +++--- lib/string-desc.h | 62 +++---- lib/xstring-buffer.c | 4 +- lib/xstring-desc.c | 2 +- lib/xstring-desc.h | 26 +-- tests/test-sf-istream.c | 4 +- tests/test-sfl-istream.c | 4 +- tests/test-string-buffer.c | 18 +- tests/test-string-desc-quotearg.c | 44 ++--- tests/test-string-desc.c | 296 +++++++++++++++--------------- tests/test-string-desc.sh | 4 +- tests/test-xstring-desc.c | 68 +++---- 21 files changed, 461 insertions(+), 371 deletions(-) diff --git a/ChangeLog b/ChangeLog index 70bf7a7bb0..ea1a742b40 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,89 @@ +2025-01-02 Bruno Haible + + string-desc, xstring-desc, string-desc-quotearg: Rename functions. + * lib/string-desc.h (sd_equals): Renamed from string_desc_equals. + (sd_startswith): Renamed from string_desc_startswith. + (sd_endswith): Renamed from string_desc_endswith. + (sd_cmp): Renamed from string_desc_cmp. + (sd_c_casecmp): Renamed from string_desc_c_casecmp. + (sd_index): Renamed from string_desc_index. + (sd_last_index): Renamed from string_desc_last_index. + (sd_contains): Renamed from string_desc_contains. + (sd_new_empty): Renamed from string_desc_new_empty. + (sd_new_addr): Renamed from string_desc_new_addr. + (sd_from_c): Renamed from string_desc_from_c. + (sd_substring): Renamed from string_desc_substring. + (sd_write): Renamed from string_desc_write. + (sd_fwrite): Renamed from string_desc_fwrite. + (sd_new): Renamed from string_desc_new. + (sd_new_filled): Renamed from string_desc_new_filled. + (sd_copy): Renamed from string_desc_copy. + (sd_concat): Renamed from string_desc_concat. + (sd_c): Renamed from string_desc_c. + (sd_set_char_at): Renamed from string_desc_set_char_at. + (sd_fill): Renamed from string_desc_fill. + (sd_overwrite): Renamed from string_desc_overwrite. + (sd_free): Renamed from string_desc_free. + (sd_length): Renamed from string_desc_length. + (sd_char_at): Renamed from string_desc_char_at. + (sd_data): Renamed from string_desc_data. + (sd_is_empty): Renamed from string_desc_is_empty. + * lib/string-desc.c (sd_equals): Renamed from string_desc_equals. + (sd_startswith): Renamed from string_desc_startswith. + (sd_endswith): Renamed from string_desc_endswith. + (sd_cmp): Renamed from string_desc_cmp. + (sd_c_casecmp): Renamed from string_desc_c_casecmp. + (sd_index): Renamed from string_desc_index. + (sd_last_index): Renamed from string_desc_last_index. + (sd_new_empty): Renamed from string_desc_new_empty. + (sd_new_addr): Renamed from string_desc_new_addr. + (sd_from_c): Renamed from string_desc_from_c. + (sd_substring): Renamed from string_desc_substring. + (sd_write): Renamed from string_desc_write. + (sd_fwrite): Renamed from string_desc_fwrite. + (sd_new): Renamed from string_desc_new. + (sd_new_filled): Renamed from string_desc_new_filled. + (sd_copy): Renamed from string_desc_copy. + (sd_concat): Renamed from string_desc_concat. + (sd_c): Renamed from string_desc_c. + (sd_set_char_at): Renamed from string_desc_set_char_at. + (sd_fill): Renamed from string_desc_fill. + (sd_overwrite): Renamed from string_desc_overwrite. + (sd_free): Renamed from string_desc_free. + * lib/xstring-desc.h (xsd_concat): Renamed from xstring_desc_concat. + (xsd_new): Renamed from xstring_desc_new. + (xsd_new_filled): Renamed from xstring_desc_new_filled. + (xsd_copy): Renamed from xstring_desc_copy. + (xsd_c): Renamed from xstring_desc_c. + * lib/xstring-desc.c (xsd_concat): Renamed from xstring_desc_concat. + * lib/string-desc-quotearg.h (sd_quotearg_buffer): Renamed from + string_desc_quotearg_buffer. + (sd_quotearg_alloc): Renamed from string_desc_quotearg_alloc. + (sd_quotearg_n): Renamed from string_desc_quotearg_n. + (sd_quotearg): Renamed from string_desc_quotearg. + (sd_quotearg_n_style): Renamed from string_desc_quotearg_n_style. + (sd_quotearg_style): Renamed from string_desc_quotearg_style. + (sd_quotearg_char): Renamed from string_desc_quotearg_char. + (sd_quotearg_colon): Renamed from string_desc_quotearg_colon. + (sd_quotearg_n_custom): Renamed from string_desc_quotearg_n_custom. + (sd_quotearg_custom): Renamed from sd_quotearg_n_custom. + * lib/string-desc-contains.c (sd_contains): Renamed from + string_desc_contains. + * lib/string-buffer.h: Update. + * lib/string-buffer.c (sb_append_desc, sb_contents, sb_dupfree): Update. + * lib/xstring-buffer.c (sb_xdupfree): Update. + * lib/sf-istream.c (sf_istream_init_from_string_desc): Update. + * tests/test-string-desc.c (main): Update. + * tests/test-string-desc.sh: Update. + * tests/test-xstring-desc.c (main): Update. + * tests/test-string-desc-quotearg.c (main): Update. + * tests/test-string-buffer.c (main): Update. + * tests/test-sf-istream.c (main): Update. + * tests/test-sfl-istream.c (main): Update. + * doc/string-desc.texi: Update. + * doc/strings.texi: Update. + * NEWS: Mention the change. + 2025-01-02 Simon Josefsson maintainer-makefile: Improve gnulib-version handling. diff --git a/NEWS b/NEWS index e64d1583f8..d009455429 100644 --- a/NEWS +++ b/NEWS @@ -74,6 +74,10 @@ User visible incompatible changes Date Modules Changes +2025-01-02 string-desc The function prefix is changed from string_desc_ + xstring-desc to sd_, and from xstring_desc_ to xsd_. + string-desc-quotearg + 2024-12-25 xprintf The functions x[v][f]printf now return an 'off64_t' instead of an 'int'. diff --git a/doc/string-desc.texi b/doc/string-desc.texi index 521ead0363..ab5c5fced3 100644 --- a/doc/string-desc.texi +++ b/doc/string-desc.texi @@ -90,10 +90,10 @@ would not work for strings longer than @code{INT_MAX} bytes. Therefore Gnulib offers @itemize @item -a function @code{string_desc_fwrite} that outputs a string descriptor to +a function @code{sd_fwrite} that outputs a string descriptor to a @code{FILE} stream, @item -a function @code{string_desc_write} that outputs a string descriptor to +a function @code{sd_write} that outputs a string descriptor to a file descriptor, @item and for those applications where the NUL characters should become diff --git a/doc/strings.texi b/doc/strings.texi index 574f76dcb6..89d48b7adb 100644 --- a/doc/strings.texi +++ b/doc/strings.texi @@ -402,7 +402,7 @@ and in Gnulib. @item @code{strlen} @tab @code{strlen} @tab @code{mbslen} -@tab @code{string_desc_length} +@tab @code{sd_length} @tab @code{wcslen} @tab @code{u32_strlen} @@ -416,7 +416,7 @@ and in Gnulib. @item @code{strcmp} @tab @code{strcmp} @tab @code{strcmp} -@tab @code{string_desc_cmp} +@tab @code{sd_cmp} @tab @code{wcscmp} @tab @code{u32_strcmp} @@ -458,21 +458,21 @@ and in Gnulib. @item @code{strchr} @tab @code{strchr} @tab @code{mbschr} -@tab @code{string_desc_index} +@tab @code{sd_index} @tab @code{wcschr} @tab @code{u32_strchr} @item @code{strrchr} @tab @code{strrchr} @tab @code{mbsrchr} -@tab @code{string_desc_last_index} +@tab @code{sd_last_index} @tab @code{wcsrchr} @tab @code{u32_strrchr} @item @code{strstr} @tab @code{strstr} @tab @code{mbsstr} -@tab @code{string_desc_contains} +@tab @code{sd_contains} @tab @code{wcsstr} @tab @code{u32_strstr} @@ -521,7 +521,7 @@ and in Gnulib. @item @code{strcpy} @tab @code{strcpy} @tab @code{strcpy} -@tab @code{string_desc_copy} +@tab @code{sd_copy} @tab @code{wcscpy} @tab @code{u32_strcpy} @@ -549,7 +549,7 @@ and in Gnulib. @item @code{strcat} @tab @code{strcat} @tab @code{strcat} -@tab @code{string_desc_concat} +@tab @code{sd_concat} @tab @code{wcscat} @tab @code{u32_strcat} @@ -563,14 +563,14 @@ and in Gnulib. @item @code{free} @tab @code{free} @tab @code{free} -@tab @code{string_desc_free} +@tab @code{sd_free} @tab @code{free} @tab @code{free} @item @code{strdup} @tab @code{strdup} @tab @code{strdup} -@tab @code{string_desc_copy} +@tab @code{sd_copy} @tab @code{wcsdup} @tab @code{u32_strdup} diff --git a/lib/sf-istream.c b/lib/sf-istream.c index 9b6e72f647..8416cd5269 100644 --- a/lib/sf-istream.c +++ b/lib/sf-istream.c @@ -46,8 +46,8 @@ sf_istream_init_from_string_desc (sf_istream_t *stream, string_desc_t input) { stream->fp = NULL; - stream->input = string_desc_data (input); - stream->input_end = stream->input + string_desc_length (input); + stream->input = sd_data (input); + stream->input_end = stream->input + sd_length (input); } int diff --git a/lib/string-buffer.c b/lib/string-buffer.c index 9595729f16..efb95adf6a 100644 --- a/lib/string-buffer.c +++ b/lib/string-buffer.c @@ -101,13 +101,13 @@ sb_append1 (struct string_buffer *buffer, char c) int sb_append_desc (struct string_buffer *buffer, string_desc_t s) { - size_t len = string_desc_length (s); + size_t len = sd_length (s); if (sb_ensure_more_bytes (buffer, len) < 0) { buffer->error = true; return -1; } - memcpy (buffer->data + buffer->length, string_desc_data (s), len); + memcpy (buffer->data + buffer->length, sd_data (s), len); buffer->length += len; return 0; } @@ -136,7 +136,7 @@ sb_free (struct string_buffer *buffer) string_desc_t sb_contents (struct string_buffer *buffer) { - return string_desc_new_addr (buffer->length, buffer->data); + return sd_new_addr (buffer->length, buffer->data); } const char * @@ -162,7 +162,7 @@ sb_dupfree (struct string_buffer *buffer) if (copy == NULL) goto fail; memcpy (copy, buffer->data, length); - return string_desc_new_addr (length, copy); + return sd_new_addr (length, copy); } else { @@ -174,12 +174,12 @@ sb_dupfree (struct string_buffer *buffer) if (contents == NULL) goto fail; } - return string_desc_new_addr (length, contents); + return sd_new_addr (length, contents); } fail: sb_free (buffer); - return string_desc_new_addr (0, NULL); + return sd_new_addr (0, NULL); } char * diff --git a/lib/string-buffer.h b/lib/string-buffer.h index 33b9f46933..78ce736c02 100644 --- a/lib/string-buffer.h +++ b/lib/string-buffer.h @@ -115,7 +115,7 @@ extern const char * sb_contents_c (struct string_buffer *buffer); /* Returns the contents of BUFFER and frees all other memory held by BUFFER. Returns NULL upon failure or if there was an error earlier. - It is the responsibility of the caller to string_desc_free() the result. */ + It is the responsibility of the caller to sd_free() the result. */ extern string_desc_t sb_dupfree (struct string_buffer *buffer) _GL_ATTRIBUTE_RELEASE_CAPABILITY (buffer->data); @@ -182,7 +182,7 @@ extern const char * sb_xcontents_c (struct string_buffer *buffer) /* Returns the contents of BUFFER and frees all other memory held by BUFFER. Returns (0, NULL) if there was an error earlier. - It is the responsibility of the caller to string_desc_free() the result. */ + It is the responsibility of the caller to sd_free() the result. */ extern string_desc_t sb_xdupfree (struct string_buffer *buffer) _GL_ATTRIBUTE_RELEASE_CAPABILITY (buffer->data); diff --git a/lib/string-desc-contains.c b/lib/string-desc-contains.c index 9612f7765d..18657c70ff 100644 --- a/lib/string-desc-contains.c +++ b/lib/string-desc-contains.c @@ -31,7 +31,7 @@ which — depending on platforms — costs up to 2 KB of binary code. */ ptrdiff_t -string_desc_contains (string_desc_t haystack, string_desc_t needle) +sd_contains (string_desc_t haystack, string_desc_t needle) { if (needle._nbytes == 0) return 0; diff --git a/lib/string-desc-quotearg.h b/lib/string-desc-quotearg.h index f63ed7603a..4184089612 100644 --- a/lib/string-desc-quotearg.h +++ b/lib/string-desc-quotearg.h @@ -50,22 +50,22 @@ extern "C" { does not use backslash escapes and the flags of O do not request elision of null bytes. */ #if 0 -extern size_t string_desc_quotearg_buffer (char *restrict buffer, - size_t buffersize, - string_desc_t arg, - struct quoting_options const *o); +extern size_t sd_quotearg_buffer (char *restrict buffer, + size_t buffersize, + string_desc_t arg, + struct quoting_options const *o); #endif -/* Like string_desc_quotearg_buffer, except return the result in a newly +/* Like sd_quotearg_buffer, except return the result in a newly allocated buffer and store its length, excluding the terminating null byte, in *SIZE. It is the caller's responsibility to free the result. The result might contain embedded null bytes if the style of O does not use backslash escapes and the flags of O do not request elision of null bytes. */ #if 0 -extern char *string_desc_quotearg_alloc (string_desc_t arg, - size_t *size, - struct quoting_options const *o) +extern char *sd_quotearg_alloc (string_desc_t arg, + size_t *size, + struct quoting_options const *o) _GL_ATTRIBUTE_NONNULL ((2)) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_RETURNS_NONNULL; @@ -77,68 +77,68 @@ extern char *string_desc_quotearg_alloc (string_desc_t arg, reused by the next call to this function with the same value of N. N must be nonnegative. */ #if 0 -extern char *string_desc_quotearg_n (int n, string_desc_t arg); +extern char *sd_quotearg_n (int n, string_desc_t arg); #endif -/* Equivalent to string_desc_quotearg_n (0, ARG). */ +/* Equivalent to sd_quotearg_n (0, ARG). */ #if 0 -extern char *string_desc_quotearg (string_desc_t arg); +extern char *sd_quotearg (string_desc_t arg); #endif /* Use style S and storage slot N to return a quoted version of the string ARG. - This is like string_desc_quotearg_n (N, ARG), except that it uses S + This is like sd_quotearg_n (N, ARG), except that it uses S with no other options to specify the quoting method. */ #if 0 -extern char *string_desc_quotearg_n_style (int n, enum quoting_style s, - string_desc_t arg); +extern char *sd_quotearg_n_style (int n, enum quoting_style s, + string_desc_t arg); #endif -/* Equivalent to string_desc_quotearg_n_style (0, S, ARG). */ +/* Equivalent to sd_quotearg_n_style (0, S, ARG). */ #if 0 -extern char *string_desc_quotearg_style (enum quoting_style s, - string_desc_t arg); +extern char *sd_quotearg_style (enum quoting_style s, + string_desc_t arg); #endif -/* Like string_desc_quotearg (ARG), except also quote any instances of CH. +/* Like sd_quotearg (ARG), except also quote any instances of CH. See set_char_quoting for a description of acceptable CH values. */ #if 0 -extern char *string_desc_quotearg_char (string_desc_t arg, char ch); +extern char *sd_quotearg_char (string_desc_t arg, char ch); #endif -/* Equivalent to string_desc_quotearg_char (ARG, ':'). */ +/* Equivalent to sd_quotearg_char (ARG, ':'). */ #if 0 -extern char *string_desc_quotearg_colon (string_desc_t arg); +extern char *sd_quotearg_colon (string_desc_t arg); #endif -/* Like string_desc_quotearg_n_style (N, S, ARG) but with S as +/* Like sd_quotearg_n_style (N, S, ARG) but with S as custom_quoting_style with left quote as LEFT_QUOTE and right quote as RIGHT_QUOTE. See set_custom_quoting for a description of acceptable LEFT_QUOTE and RIGHT_QUOTE values. */ #if 0 -extern char *string_desc_quotearg_n_custom (int n, - char const *left_quote, - char const *right_quote, - string_desc_t arg); +extern char *sd_quotearg_n_custom (int n, + char const *left_quote, + char const *right_quote, + string_desc_t arg); #endif /* Equivalent to - string_desc_quotearg_n_custom (0, LEFT_QUOTE, RIGHT_QUOTE, ARG). */ + sd_quotearg_n_custom (0, LEFT_QUOTE, RIGHT_QUOTE, ARG). */ #if 0 -extern char *string_desc_quotearg_custom (char const *left_quote, - char const *right_quote, - string_desc_t arg); +extern char *sd_quotearg_custom (char const *left_quote, + char const *right_quote, + string_desc_t arg); #endif /* ==== Inline function definitions ==== */ GL_STRING_DESC_QUOTEARG_INLINE size_t -string_desc_quotearg_buffer (char *restrict buffer, size_t buffersize, - string_desc_t arg, - struct quoting_options const *o) +sd_quotearg_buffer (char *restrict buffer, size_t buffersize, + string_desc_t arg, + struct quoting_options const *o) { return quotearg_buffer (buffer, buffersize, - string_desc_data (arg), string_desc_length (arg), + sd_data (arg), sd_length (arg), o); } @@ -147,69 +147,69 @@ _GL_ATTRIBUTE_NONNULL ((2)) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_RETURNS_NONNULL char * -string_desc_quotearg_alloc (string_desc_t arg, - size_t *size, - struct quoting_options const *o) +sd_quotearg_alloc (string_desc_t arg, + size_t *size, + struct quoting_options const *o) { - return quotearg_alloc_mem (string_desc_data (arg), string_desc_length (arg), + return quotearg_alloc_mem (sd_data (arg), sd_length (arg), size, o); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_n (int n, string_desc_t arg) +sd_quotearg_n (int n, string_desc_t arg) { - return quotearg_n_mem (n, string_desc_data (arg), string_desc_length (arg)); + return quotearg_n_mem (n, sd_data (arg), sd_length (arg)); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg (string_desc_t arg) +sd_quotearg (string_desc_t arg) { - return quotearg_mem (string_desc_data (arg), string_desc_length (arg)); + return quotearg_mem (sd_data (arg), sd_length (arg)); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_n_style (int n, enum quoting_style s, string_desc_t arg) +sd_quotearg_n_style (int n, enum quoting_style s, string_desc_t arg) { return quotearg_n_style_mem (n, s, - string_desc_data (arg), string_desc_length (arg)); + sd_data (arg), sd_length (arg)); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_style (enum quoting_style s, string_desc_t arg) +sd_quotearg_style (enum quoting_style s, string_desc_t arg) { return quotearg_style_mem (s, - string_desc_data (arg), string_desc_length (arg)); + sd_data (arg), sd_length (arg)); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_char (string_desc_t arg, char ch) +sd_quotearg_char (string_desc_t arg, char ch) { - return quotearg_char_mem (string_desc_data (arg), string_desc_length (arg), + return quotearg_char_mem (sd_data (arg), sd_length (arg), ch); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_colon (string_desc_t arg) +sd_quotearg_colon (string_desc_t arg) { - return quotearg_colon_mem (string_desc_data (arg), string_desc_length (arg)); + return quotearg_colon_mem (sd_data (arg), sd_length (arg)); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_n_custom (int n, - char const *left_quote, char const *right_quote, - string_desc_t arg) +sd_quotearg_n_custom (int n, + char const *left_quote, char const *right_quote, + string_desc_t arg) { return quotearg_n_custom_mem (n, left_quote, right_quote, - string_desc_data (arg), string_desc_length (arg)); + sd_data (arg), sd_length (arg)); } GL_STRING_DESC_QUOTEARG_INLINE char * -string_desc_quotearg_custom (char const *left_quote, char const *right_quote, - string_desc_t arg) +sd_quotearg_custom (char const *left_quote, char const *right_quote, + string_desc_t arg) { return quotearg_custom_mem (left_quote, right_quote, - string_desc_data (arg), string_desc_length (arg)); + sd_data (arg), sd_length (arg)); } diff --git a/lib/string-desc.c b/lib/string-desc.c index ca201b0500..d99eca80e3 100644 --- a/lib/string-desc.c +++ b/lib/string-desc.c @@ -39,14 +39,14 @@ /* Return true if A and B are equal. */ bool -string_desc_equals (string_desc_t a, string_desc_t b) +sd_equals (string_desc_t a, string_desc_t b) { return (a._nbytes == b._nbytes && (a._nbytes == 0 || memcmp (a._data, b._data, a._nbytes) == 0)); } bool -string_desc_startswith (string_desc_t s, string_desc_t prefix) +sd_startswith (string_desc_t s, string_desc_t prefix) { return (s._nbytes >= prefix._nbytes && (prefix._nbytes == 0 @@ -54,7 +54,7 @@ string_desc_startswith (string_desc_t s, string_desc_t prefix) } bool -string_desc_endswith (string_desc_t s, string_desc_t suffix) +sd_endswith (string_desc_t s, string_desc_t suffix) { return (s._nbytes >= suffix._nbytes && (suffix._nbytes == 0 @@ -63,7 +63,7 @@ string_desc_endswith (string_desc_t s, string_desc_t suffix) } int -string_desc_cmp (string_desc_t a, string_desc_t b) +sd_cmp (string_desc_t a, string_desc_t b) { if (a._nbytes > b._nbytes) { @@ -86,14 +86,14 @@ string_desc_cmp (string_desc_t a, string_desc_t b) } int -string_desc_c_casecmp (string_desc_t a, string_desc_t b) +sd_c_casecmp (string_desc_t a, string_desc_t b) { /* Don't use memcasecmp here, since it uses the current locale, not the "C" locale. */ - idx_t an = string_desc_length (a); - idx_t bn = string_desc_length (b); - const char *ap = string_desc_data (a); - const char *bp = string_desc_data (b); + idx_t an = sd_length (a); + idx_t bn = sd_length (b); + const char *ap = sd_data (a); + const char *bp = sd_data (b); idx_t n = (an < bn ? an : bn); idx_t i; for (i = 0; i < n; i++) @@ -108,7 +108,7 @@ string_desc_c_casecmp (string_desc_t a, string_desc_t b) } ptrdiff_t -string_desc_index (string_desc_t s, char c) +sd_index (string_desc_t s, char c) { if (s._nbytes > 0) { @@ -120,7 +120,7 @@ string_desc_index (string_desc_t s, char c) } ptrdiff_t -string_desc_last_index (string_desc_t s, char c) +sd_last_index (string_desc_t s, char c) { if (s._nbytes > 0) { @@ -132,7 +132,7 @@ string_desc_last_index (string_desc_t s, char c) } string_desc_t -string_desc_new_empty (void) +sd_new_empty (void) { string_desc_t result; @@ -144,7 +144,7 @@ string_desc_new_empty (void) } string_desc_t -string_desc_new_addr (idx_t n, char *addr) +sd_new_addr (idx_t n, char *addr) { string_desc_t result; @@ -158,7 +158,7 @@ string_desc_new_addr (idx_t n, char *addr) } string_desc_t -string_desc_from_c (const char *s) +sd_from_c (const char *s) { string_desc_t result; @@ -169,7 +169,7 @@ string_desc_from_c (const char *s) } string_desc_t -string_desc_substring (string_desc_t s, idx_t start, idx_t end) +sd_substring (string_desc_t s, idx_t start, idx_t end) { string_desc_t result; @@ -184,7 +184,7 @@ string_desc_substring (string_desc_t s, idx_t start, idx_t end) } int -string_desc_write (int fd, string_desc_t s) +sd_write (int fd, string_desc_t s) { if (s._nbytes > 0) if (full_write (fd, s._data, s._nbytes) != s._nbytes) @@ -194,7 +194,7 @@ string_desc_write (int fd, string_desc_t s) } int -string_desc_fwrite (FILE *fp, string_desc_t s) +sd_fwrite (FILE *fp, string_desc_t s) { if (s._nbytes > 0) if (fwrite (s._data, 1, s._nbytes, fp) != s._nbytes) @@ -206,7 +206,7 @@ string_desc_fwrite (FILE *fp, string_desc_t s) /* ==== Memory-allocating operations on string descriptors ==== */ int -string_desc_new (string_desc_t *resultp, idx_t n) +sd_new (string_desc_t *resultp, idx_t n) { string_desc_t result; @@ -230,7 +230,7 @@ string_desc_new (string_desc_t *resultp, idx_t n) } int -string_desc_new_filled (string_desc_t *resultp, idx_t n, char c) +sd_new_filled (string_desc_t *resultp, idx_t n, char c) { string_desc_t result; @@ -251,7 +251,7 @@ string_desc_new_filled (string_desc_t *resultp, idx_t n, char c) } int -string_desc_copy (string_desc_t *resultp, string_desc_t s) +sd_copy (string_desc_t *resultp, string_desc_t s) { string_desc_t result; idx_t n = s._nbytes; @@ -273,7 +273,7 @@ string_desc_copy (string_desc_t *resultp, string_desc_t s) } int -string_desc_concat (string_desc_t *resultp, idx_t n, string_desc_t string1, ...) +sd_concat (string_desc_t *resultp, idx_t n, string_desc_t string1, ...) { if (n <= 0) /* Invalid argument. */ @@ -327,7 +327,7 @@ string_desc_concat (string_desc_t *resultp, idx_t n, string_desc_t string1, ...) } char * -string_desc_c (string_desc_t s) +sd_c (string_desc_t s) { idx_t n = s._nbytes; char *result = (char *) imalloc (n + 1); @@ -345,7 +345,7 @@ string_desc_c (string_desc_t s) /* ==== Operations with side effects on string descriptors ==== */ void -string_desc_set_char_at (string_desc_t s, idx_t i, char c) +sd_set_char_at (string_desc_t s, idx_t i, char c) { if (!(i >= 0 && i < s._nbytes)) /* Invalid argument. */ @@ -354,7 +354,7 @@ string_desc_set_char_at (string_desc_t s, idx_t i, char c) } void -string_desc_fill (string_desc_t s, idx_t start, idx_t end, char c) +sd_fill (string_desc_t s, idx_t start, idx_t end, char c) { if (!(start >= 0 && start <= end)) /* Invalid arguments. */ @@ -365,7 +365,7 @@ string_desc_fill (string_desc_t s, idx_t start, idx_t end, char c) } void -string_desc_overwrite (string_desc_t s, idx_t start, string_desc_t t) +sd_overwrite (string_desc_t s, idx_t start, string_desc_t t) { if (!(start >= 0 && start + t._nbytes <= s._nbytes)) /* Invalid arguments. */ @@ -376,7 +376,7 @@ string_desc_overwrite (string_desc_t s, idx_t start, string_desc_t t) } void -string_desc_free (string_desc_t s) +sd_free (string_desc_t s) { free (s._data); } diff --git a/lib/string-desc.h b/lib/string-desc.h index 5854220d05..12a0fb199b 100644 --- a/lib/string-desc.h +++ b/lib/string-desc.h @@ -69,82 +69,82 @@ struct string_desc_t /* Return the length of the string S. */ #if 0 /* Defined inline below. */ -extern idx_t string_desc_length (string_desc_t s); +extern idx_t sd_length (string_desc_t s); #endif /* Return the byte at index I of string S. I must be < length(S). */ #if 0 /* Defined inline below. */ -extern char string_desc_char_at (string_desc_t s, idx_t i); +extern char sd_char_at (string_desc_t s, idx_t i); #endif /* Return a read-only view of the bytes of S. */ #if 0 /* Defined inline below. */ -extern const char * string_desc_data (string_desc_t s); +extern const char * sd_data (string_desc_t s); #endif /* Return true if S is the empty string. */ #if 0 /* Defined inline below. */ -extern bool string_desc_is_empty (string_desc_t s); +extern bool sd_is_empty (string_desc_t s); #endif /* Return true if A and B are equal. */ -extern bool string_desc_equals (string_desc_t a, string_desc_t b); +extern bool sd_equals (string_desc_t a, string_desc_t b); /* Return true if S starts with PREFIX. */ -extern bool string_desc_startswith (string_desc_t s, string_desc_t prefix); +extern bool sd_startswith (string_desc_t s, string_desc_t prefix); /* Return true if S ends with SUFFIX. */ -extern bool string_desc_endswith (string_desc_t s, string_desc_t suffix); +extern bool sd_endswith (string_desc_t s, string_desc_t suffix); /* Return > 0, == 0, or < 0 if A > B, A == B, A < B. This uses a lexicographic ordering, where the bytes are compared as 'unsigned char'. */ -extern int string_desc_cmp (string_desc_t a, string_desc_t b); +extern int sd_cmp (string_desc_t a, string_desc_t b); /* Return > 0, == 0, or < 0 if A > B, A == B, A < B. Either A or B must be entirely ASCII. This uses a lexicographic ordering, where the bytes are compared as 'unsigned char', ignoring case, in the "C" locale. */ -extern int string_desc_c_casecmp (string_desc_t a, string_desc_t b); +extern int sd_c_casecmp (string_desc_t a, string_desc_t b); /* Return the index of the first occurrence of C in S, or -1 if there is none. */ -extern ptrdiff_t string_desc_index (string_desc_t s, char c); +extern ptrdiff_t sd_index (string_desc_t s, char c); /* Return the index of the last occurrence of C in S, or -1 if there is none. */ -extern ptrdiff_t string_desc_last_index (string_desc_t s, char c); +extern ptrdiff_t sd_last_index (string_desc_t s, char c); /* Return the index of the first occurrence of NEEDLE in HAYSTACK, or -1 if there is none. */ -extern ptrdiff_t string_desc_contains (string_desc_t haystack, string_desc_t needle); +extern ptrdiff_t sd_contains (string_desc_t haystack, string_desc_t needle); /* Return an empty string. */ -extern string_desc_t string_desc_new_empty (void); +extern string_desc_t sd_new_empty (void); /* Construct and return a string of length N, at the given memory address. */ -extern string_desc_t string_desc_new_addr (idx_t n, char *addr); +extern string_desc_t sd_new_addr (idx_t n, char *addr); /* Return a string that represents the C string S, of length strlen (S). */ -extern string_desc_t string_desc_from_c (const char *s); +extern string_desc_t sd_from_c (const char *s); /* Return the substring of S, starting at offset START and ending at offset END. START must be <= END. The result is of length END - START. The result must not be freed (since its storage is part of the storage of S). */ -extern string_desc_t string_desc_substring (string_desc_t s, idx_t start, idx_t end); +extern string_desc_t sd_substring (string_desc_t s, idx_t start, idx_t end); /* Output S to the file descriptor FD. Return 0 if successful. Upon error, return -1 with errno set. */ -extern int string_desc_write (int fd, string_desc_t s); +extern int sd_write (int fd, string_desc_t s); /* Output S to the FILE stream FP. Return 0 if successful. Upon error, return -1. */ -extern int string_desc_fwrite (FILE *fp, string_desc_t s); +extern int sd_fwrite (FILE *fp, string_desc_t s); /* ==== Memory-allocating operations on string descriptors ==== */ @@ -153,61 +153,61 @@ extern int string_desc_fwrite (FILE *fp, string_desc_t s); Return 0 if successful. Upon error, return -1 with errno set. */ _GL_ATTRIBUTE_NODISCARD -extern int string_desc_new (string_desc_t *resultp, idx_t n); +extern int sd_new (string_desc_t *resultp, idx_t n); /* Construct a string of length N, filled with C. Return 0 if successful. Upon error, return -1 with errno set. */ _GL_ATTRIBUTE_NODISCARD -extern int string_desc_new_filled (string_desc_t *resultp, idx_t n, char c); +extern int sd_new_filled (string_desc_t *resultp, idx_t n, char c); /* Construct a copy of string S. Return 0 if successful. Upon error, return -1 with errno set. */ _GL_ATTRIBUTE_NODISCARD -extern int string_desc_copy (string_desc_t *resultp, string_desc_t s); +extern int sd_copy (string_desc_t *resultp, string_desc_t s); /* Construct the concatenation of N strings. N must be > 0. Return 0 if successful. Upon error, return -1 with errno set. */ _GL_ATTRIBUTE_NODISCARD -extern int string_desc_concat (string_desc_t *resultp, idx_t n, string_desc_t string1, ...); +extern int sd_concat (string_desc_t *resultp, idx_t n, string_desc_t string1, ...); /* Construct a copy of string S, as a NUL-terminated C string. Return it is successful. Upon error, return NULL with errno set. */ -extern char * string_desc_c (string_desc_t s) _GL_ATTRIBUTE_DEALLOC_FREE; +extern char * sd_c (string_desc_t s) _GL_ATTRIBUTE_DEALLOC_FREE; /* ==== Operations with side effects on string descriptors ==== */ /* Overwrite the byte at index I of string S with C. I must be < length(S). */ -extern void string_desc_set_char_at (string_desc_t s, idx_t i, char c); +extern void sd_set_char_at (string_desc_t s, idx_t i, char c); /* Fill part of S, starting at offset START and ending at offset END, with copies of C. START must be <= END. */ -extern void string_desc_fill (string_desc_t s, idx_t start, idx_t end, char c); +extern void sd_fill (string_desc_t s, idx_t start, idx_t end, char c); /* Overwrite part of S with T, starting at offset START. START + length(T) must be <= length (S). */ -extern void string_desc_overwrite (string_desc_t s, idx_t start, string_desc_t t); +extern void sd_overwrite (string_desc_t s, idx_t start, string_desc_t t); /* Free S. */ -extern void string_desc_free (string_desc_t s); +extern void sd_free (string_desc_t s); /* ==== Inline function definitions ==== */ GL_STRING_DESC_INLINE idx_t -string_desc_length (string_desc_t s) +sd_length (string_desc_t s) { return s._nbytes; } GL_STRING_DESC_INLINE char -string_desc_char_at (string_desc_t s, idx_t i) +sd_char_at (string_desc_t s, idx_t i) { if (!(i >= 0 && i < s._nbytes)) /* Invalid argument. */ @@ -216,13 +216,13 @@ string_desc_char_at (string_desc_t s, idx_t i) } GL_STRING_DESC_INLINE const char * -string_desc_data (string_desc_t s) +sd_data (string_desc_t s) { return s._data; } GL_STRING_DESC_INLINE bool -string_desc_is_empty (string_desc_t s) +sd_is_empty (string_desc_t s) { return s._nbytes == 0; } diff --git a/lib/xstring-buffer.c b/lib/xstring-buffer.c index f96e541a69..7518f4f381 100644 --- a/lib/xstring-buffer.c +++ b/lib/xstring-buffer.c @@ -59,10 +59,10 @@ sb_xdupfree (struct string_buffer *buffer) if (buffer->error) { sb_free (buffer); - return string_desc_new_addr (0, NULL); + return sd_new_addr (0, NULL); } string_desc_t contents = sb_dupfree (buffer); - if (string_desc_data (contents) == NULL) + if (sd_data (contents) == NULL) xalloc_die (); return contents; } diff --git a/lib/xstring-desc.c b/lib/xstring-desc.c index b1d52cafab..69520e2b0a 100644 --- a/lib/xstring-desc.c +++ b/lib/xstring-desc.c @@ -22,7 +22,7 @@ #include "ialloc.h" string_desc_t -xstring_desc_concat (idx_t n, string_desc_t string1, ...) +xsd_concat (idx_t n, string_desc_t string1, ...) { if (n <= 0) /* Invalid argument. */ diff --git a/lib/xstring-desc.h b/lib/xstring-desc.h index f5acf8434d..7957795d98 100644 --- a/lib/xstring-desc.h +++ b/lib/xstring-desc.h @@ -43,53 +43,53 @@ extern "C" { /* Return a string of length N, with uninitialized contents. */ #if 0 /* Defined inline below. */ -extern string_desc_t xstring_desc_new (idx_t n); +extern string_desc_t xsd_new (idx_t n); #endif /* Return a string of length N, filled with C. */ #if 0 /* Defined inline below. */ -extern string_desc_t xstring_desc_new_filled (idx_t n, char c); +extern string_desc_t xsd_new_filled (idx_t n, char c); #endif /* Return a copy of string S. */ #if 0 /* Defined inline below. */ -extern string_desc_t xstring_desc_copy (string_desc_t s); +extern string_desc_t xsd_copy (string_desc_t s); #endif /* Return the concatenation of N strings. N must be > 0. */ -extern string_desc_t xstring_desc_concat (idx_t n, string_desc_t string1, ...); +extern string_desc_t xsd_concat (idx_t n, string_desc_t string1, ...); /* Construct and return a copy of string S, as a NUL-terminated C string. */ #if 0 /* Defined inline below. */ -extern char * xstring_desc_c (string_desc_t s) _GL_ATTRIBUTE_DEALLOC_FREE; +extern char * xsd_c (string_desc_t s) _GL_ATTRIBUTE_DEALLOC_FREE; #endif /* ==== Inline function definitions ==== */ GL_XSTRING_DESC_INLINE string_desc_t -xstring_desc_new (idx_t n) +xsd_new (idx_t n) { string_desc_t result; - if (string_desc_new (&result, n) < 0) + if (sd_new (&result, n) < 0) xalloc_die (); return result; } GL_XSTRING_DESC_INLINE string_desc_t -xstring_desc_new_filled (idx_t n, char c) +xsd_new_filled (idx_t n, char c) { string_desc_t result; - if (string_desc_new_filled (&result, n, c) < 0) + if (sd_new_filled (&result, n, c) < 0) xalloc_die (); return result; } GL_XSTRING_DESC_INLINE string_desc_t -xstring_desc_copy (string_desc_t s) +xsd_copy (string_desc_t s) { string_desc_t result; - if (string_desc_copy (&result, s) < 0) + if (sd_copy (&result, s) < 0) xalloc_die (); return result; } @@ -97,9 +97,9 @@ xstring_desc_copy (string_desc_t s) GL_XSTRING_DESC_INLINE _GL_ATTRIBUTE_DEALLOC_FREE char * -xstring_desc_c (string_desc_t s) +xsd_c (string_desc_t s) { - char *result = string_desc_c (s); + char *result = sd_c (s); if (result == NULL) xalloc_die (); return result; diff --git a/tests/test-sf-istream.c b/tests/test-sf-istream.c index f9d0a09d44..e3063c34d6 100644 --- a/tests/test-sf-istream.c +++ b/tests/test-sf-istream.c @@ -91,8 +91,8 @@ main () { sf_istream_t stream; sf_istream_init_from_string_desc (&stream, - string_desc_new_addr (CONTENTS_LEN, - (char *) contents)); + sd_new_addr (CONTENTS_LEN, + (char *) contents)); test_open_stream (&stream); sf_free (&stream); } diff --git a/tests/test-sfl-istream.c b/tests/test-sfl-istream.c index 931f8615cd..e0e9a02a9e 100644 --- a/tests/test-sfl-istream.c +++ b/tests/test-sfl-istream.c @@ -115,8 +115,8 @@ main () { sfl_istream_t stream; sfl_istream_init_from_string_desc (&stream, - string_desc_new_addr (CONTENTS_LEN, - (char *) contents)); + sd_new_addr (CONTENTS_LEN, + (char *) contents)); test_open_stream (&stream); sfl_free (&stream); } diff --git a/tests/test-string-buffer.c b/tests/test-string-buffer.c index 216f4cdab4..fa3bb82bb6 100644 --- a/tests/test-string-buffer.c +++ b/tests/test-string-buffer.c @@ -63,19 +63,19 @@ main () sb_append1 (&buffer, '\377'); { string_desc_t sd = sb_contents (&buffer); - ASSERT (string_desc_length (sd) == 2); - ASSERT (string_desc_char_at (sd, 0) == 'x'); - ASSERT (string_desc_char_at (sd, 1) == '\377'); + ASSERT (sd_length (sd) == 2); + ASSERT (sd_char_at (sd, 0) == 'x'); + ASSERT (sd_char_at (sd, 1) == '\377'); } sb_append1 (&buffer, '\0'); sb_append1 (&buffer, 'z'); { string_desc_t sd = sb_contents (&buffer); - ASSERT (string_desc_length (sd) == 4); - ASSERT (string_desc_char_at (sd, 0) == 'x'); - ASSERT (string_desc_char_at (sd, 1) == '\377'); - ASSERT (string_desc_char_at (sd, 2) == '\0'); - ASSERT (string_desc_char_at (sd, 3) == 'z'); + ASSERT (sd_length (sd) == 4); + ASSERT (sd_char_at (sd, 0) == 'x'); + ASSERT (sd_char_at (sd, 1) == '\377'); + ASSERT (sd_char_at (sd, 2) == '\0'); + ASSERT (sd_char_at (sd, 3) == 'z'); } char *s = sb_dupfree_c (&buffer); ASSERT (s != NULL && memcmp (s, "x\377\0z\0", 5) == 0); @@ -109,7 +109,7 @@ main () sb_init (&buffer); sb_append_c (&buffer, "abc"); - sb_append_desc (&buffer, string_desc_new_addr (5, "de\0fg")); + sb_append_desc (&buffer, sd_new_addr (5, "de\0fg")); sb_append_c (&buffer, "hij"); char *s = sb_dupfree_c (&buffer); ASSERT (s != NULL && memcmp (s, "abcde\0fghij", 12) == 0); diff --git a/tests/test-string-desc-quotearg.c b/tests/test-string-desc-quotearg.c index 865e8f9113..23c290e957 100644 --- a/tests/test-string-desc-quotearg.c +++ b/tests/test-string-desc-quotearg.c @@ -28,75 +28,75 @@ int main (void) { - string_desc_t s1 = string_desc_from_c ("Hello world!"); - string_desc_t s2 = string_desc_new_addr (21, "The\0quick\0brown\0\0fox"); + string_desc_t s1 = sd_from_c ("Hello world!"); + string_desc_t s2 = sd_new_addr (21, "The\0quick\0brown\0\0fox"); - /* Test string_desc_quotearg_buffer. */ + /* Test sd_quotearg_buffer. */ { char buf[80]; - size_t n = string_desc_quotearg_buffer (buf, sizeof (buf), s2, NULL); + size_t n = sd_quotearg_buffer (buf, sizeof (buf), s2, NULL); ASSERT (n == 21); ASSERT (memcmp (buf, "The\0quick\0brown\0\0fox", n) == 0); } - /* Test string_desc_quotearg_alloc. */ + /* Test sd_quotearg_alloc. */ { size_t n; - char *ret = string_desc_quotearg_alloc (s2, &n, NULL); + char *ret = sd_quotearg_alloc (s2, &n, NULL); ASSERT (n == 21); ASSERT (memcmp (ret, "The\0quick\0brown\0\0fox", n) == 0); free (ret); } - /* Test string_desc_quotearg_n. */ + /* Test sd_quotearg_n. */ { - char *ret = string_desc_quotearg_n (1, s2); + char *ret = sd_quotearg_n (1, s2); ASSERT (memcmp (ret, "Thequickbrownfox", 16 + 1) == 0); } - /* Test string_desc_quotearg. */ + /* Test sd_quotearg. */ { - char *ret = string_desc_quotearg (s2); + char *ret = sd_quotearg (s2); ASSERT (memcmp (ret, "Thequickbrownfox", 16 + 1) == 0); } - /* Test string_desc_quotearg_n_style. */ + /* Test sd_quotearg_n_style. */ { - char *ret = string_desc_quotearg_n_style (1, clocale_quoting_style, s2); + char *ret = sd_quotearg_n_style (1, clocale_quoting_style, s2); ASSERT (memcmp (ret, "\"The\\0quick\\0brown\\0\\0fox\\0\"", 28 + 1) == 0 || /* if the locale has UTF-8 encoding */ memcmp (ret, "\342\200\230The\\0quick\\0brown\\0\\0fox\\0\342\200\231", 32 + 1) == 0); } - /* Test string_desc_quotearg_style. */ + /* Test sd_quotearg_style. */ { - char *ret = string_desc_quotearg_style (clocale_quoting_style, s2); + char *ret = sd_quotearg_style (clocale_quoting_style, s2); ASSERT (memcmp (ret, "\"The\\0quick\\0brown\\0\\0fox\\0\"", 28 + 1) == 0 || /* if the locale has UTF-8 encoding */ memcmp (ret, "\342\200\230The\\0quick\\0brown\\0\\0fox\\0\342\200\231", 32 + 1) == 0); } - /* Test string_desc_quotearg_char. */ + /* Test sd_quotearg_char. */ { - char *ret = string_desc_quotearg_char (s1, ' '); + char *ret = sd_quotearg_char (s1, ' '); ASSERT (memcmp (ret, "Hello world!", 12 + 1) == 0); /* ' ' not quoted?! */ } - /* Test string_desc_quotearg_colon. */ + /* Test sd_quotearg_colon. */ { - char *ret = string_desc_quotearg_colon (string_desc_from_c ("a:b")); + char *ret = sd_quotearg_colon (sd_from_c ("a:b")); ASSERT (memcmp (ret, "a:b", 3 + 1) == 0); /* ':' not quoted?! */ } - /* Test string_desc_quotearg_n_custom. */ + /* Test sd_quotearg_n_custom. */ { - char *ret = string_desc_quotearg_n_custom (2, "<", ">", s1); + char *ret = sd_quotearg_n_custom (2, "<", ">", s1); ASSERT (memcmp (ret, "", 14 + 1) == 0); } - /* Test string_desc_quotearg_n_custom. */ + /* Test sd_quotearg_n_custom. */ { - char *ret = string_desc_quotearg_custom ("[[", "]]", s1); + char *ret = sd_quotearg_custom ("[[", "]]", s1); ASSERT (memcmp (ret, "[[Hello world!]]", 16 + 1) == 0); } diff --git a/tests/test-string-desc.c b/tests/test-string-desc.c index 2fd82f74f9..d90b548f6a 100644 --- a/tests/test-string-desc.c +++ b/tests/test-string-desc.c @@ -34,172 +34,172 @@ main (int argc, char *argv[]) int fd3 = open (argv[1], O_RDWR | O_TRUNC | O_CREAT, 0600); ASSERT (fd3 >= 0); - string_desc_t s0 = string_desc_new_empty (); - string_desc_t s1 = string_desc_from_c ("Hello world!"); - string_desc_t s2 = string_desc_new_addr (21, "The\0quick\0brown\0\0fox"); - - /* Test string_desc_length. */ - ASSERT (string_desc_length (s0) == 0); - ASSERT (string_desc_length (s1) == 12); - ASSERT (string_desc_length (s2) == 21); - - /* Test string_desc_char_at. */ - ASSERT (string_desc_char_at (s1, 0) == 'H'); - ASSERT (string_desc_char_at (s1, 11) == '!'); - ASSERT (string_desc_char_at (s2, 0) == 'T'); - ASSERT (string_desc_char_at (s2, 1) == 'h'); - ASSERT (string_desc_char_at (s2, 2) == 'e'); - ASSERT (string_desc_char_at (s2, 3) == '\0'); - ASSERT (string_desc_char_at (s2, 4) == 'q'); - ASSERT (string_desc_char_at (s2, 15) == '\0'); - ASSERT (string_desc_char_at (s2, 16) == '\0'); - - /* Test string_desc_data. */ - (void) string_desc_data (s0); - ASSERT (memcmp (string_desc_data (s1), "Hello world!", 12) == 0); - ASSERT (memcmp (string_desc_data (s2), "The\0quick\0brown\0\0fox", 21) == 0); - - /* Test string_desc_is_empty. */ - ASSERT (string_desc_is_empty (s0)); - ASSERT (!string_desc_is_empty (s1)); - ASSERT (!string_desc_is_empty (s2)); - - /* Test string_desc_startswith. */ - ASSERT (string_desc_startswith (s1, s0)); - ASSERT (!string_desc_startswith (s0, s1)); - ASSERT (!string_desc_startswith (s1, s2)); - ASSERT (!string_desc_startswith (s2, s1)); - ASSERT (string_desc_startswith (s2, string_desc_from_c ("The"))); - ASSERT (string_desc_startswith (s2, string_desc_new_addr (9, "The\0quick"))); - ASSERT (!string_desc_startswith (s2, string_desc_new_addr (9, "The\0quirk"))); - - /* Test string_desc_endswith. */ - ASSERT (string_desc_endswith (s1, s0)); - ASSERT (!string_desc_endswith (s0, s1)); - ASSERT (!string_desc_endswith (s1, s2)); - ASSERT (!string_desc_endswith (s2, s1)); - ASSERT (!string_desc_endswith (s2, string_desc_from_c ("fox"))); - ASSERT (string_desc_endswith (s2, string_desc_new_addr (4, "fox"))); - ASSERT (string_desc_endswith (s2, string_desc_new_addr (6, "\0\0fox"))); - ASSERT (!string_desc_endswith (s2, string_desc_new_addr (5, "\0\0ox"))); - - /* Test string_desc_cmp. */ - ASSERT (string_desc_cmp (s0, s0) == 0); - ASSERT (string_desc_cmp (s0, s1) < 0); - ASSERT (string_desc_cmp (s0, s2) < 0); - ASSERT (string_desc_cmp (s1, s0) > 0); - ASSERT (string_desc_cmp (s1, s1) == 0); - ASSERT (string_desc_cmp (s1, s2) < 0); - ASSERT (string_desc_cmp (s2, s0) > 0); - ASSERT (string_desc_cmp (s2, s1) > 0); - ASSERT (string_desc_cmp (s2, s2) == 0); - - /* Test string_desc_c_casecmp. */ - ASSERT (string_desc_c_casecmp (s0, s0) == 0); - ASSERT (string_desc_c_casecmp (s0, s1) < 0); - ASSERT (string_desc_c_casecmp (s0, s2) < 0); - ASSERT (string_desc_c_casecmp (s1, s0) > 0); - ASSERT (string_desc_c_casecmp (s1, s1) == 0); - ASSERT (string_desc_c_casecmp (s1, s2) < 0); - ASSERT (string_desc_c_casecmp (s2, s0) > 0); - ASSERT (string_desc_c_casecmp (s2, s1) > 0); - ASSERT (string_desc_c_casecmp (s2, s2) == 0); - ASSERT (string_desc_c_casecmp (string_desc_from_c ("acab"), string_desc_from_c ("AcAB")) == 0); - ASSERT (string_desc_c_casecmp (string_desc_from_c ("AcAB"), string_desc_from_c ("acab")) == 0); - ASSERT (string_desc_c_casecmp (string_desc_from_c ("aca"), string_desc_from_c ("AcAB")) < 0); - ASSERT (string_desc_c_casecmp (string_desc_from_c ("AcAB"), string_desc_from_c ("aca")) > 0); - ASSERT (string_desc_c_casecmp (string_desc_from_c ("aca"), string_desc_from_c ("Aca\377")) < 0); - ASSERT (string_desc_c_casecmp (string_desc_from_c ("Aca\377"), string_desc_from_c ("aca")) > 0); - - /* Test string_desc_index. */ - ASSERT (string_desc_index (s0, 'o') == -1); - ASSERT (string_desc_index (s2, 'o') == 12); - - /* Test string_desc_last_index. */ - ASSERT (string_desc_last_index (s0, 'o') == -1); - ASSERT (string_desc_last_index (s2, 'o') == 18); - - /* Test string_desc_contains. */ - ASSERT (string_desc_contains (s0, string_desc_from_c ("ll")) == -1); - ASSERT (string_desc_contains (s1, string_desc_from_c ("ll")) == 2); - ASSERT (string_desc_contains (s1, string_desc_new_addr (1, "")) == -1); - ASSERT (string_desc_contains (s2, string_desc_new_addr (1, "")) == 3); - ASSERT (string_desc_contains (s1, string_desc_new_addr (2, "\0")) == -1); - ASSERT (string_desc_contains (s2, string_desc_new_addr (2, "\0")) == 15); - - /* Test string_desc_substring. */ - ASSERT (string_desc_cmp (string_desc_substring (s1, 2, 5), - string_desc_from_c ("llo")) == 0); - - /* Test string_desc_write. */ - ASSERT (string_desc_write (fd3, s0) == 0); - ASSERT (string_desc_write (fd3, s1) == 0); - ASSERT (string_desc_write (fd3, s2) == 0); - - /* Test string_desc_fwrite. */ - ASSERT (string_desc_fwrite (stdout, s0) == 0); - ASSERT (string_desc_fwrite (stdout, s1) == 0); - ASSERT (string_desc_fwrite (stdout, s2) == 0); - - /* Test string_desc_new, string_desc_set_char_at, string_desc_fill. */ + string_desc_t s0 = sd_new_empty (); + string_desc_t s1 = sd_from_c ("Hello world!"); + string_desc_t s2 = sd_new_addr (21, "The\0quick\0brown\0\0fox"); + + /* Test sd_length. */ + ASSERT (sd_length (s0) == 0); + ASSERT (sd_length (s1) == 12); + ASSERT (sd_length (s2) == 21); + + /* Test sd_char_at. */ + ASSERT (sd_char_at (s1, 0) == 'H'); + ASSERT (sd_char_at (s1, 11) == '!'); + ASSERT (sd_char_at (s2, 0) == 'T'); + ASSERT (sd_char_at (s2, 1) == 'h'); + ASSERT (sd_char_at (s2, 2) == 'e'); + ASSERT (sd_char_at (s2, 3) == '\0'); + ASSERT (sd_char_at (s2, 4) == 'q'); + ASSERT (sd_char_at (s2, 15) == '\0'); + ASSERT (sd_char_at (s2, 16) == '\0'); + + /* Test sd_data. */ + (void) sd_data (s0); + ASSERT (memcmp (sd_data (s1), "Hello world!", 12) == 0); + ASSERT (memcmp (sd_data (s2), "The\0quick\0brown\0\0fox", 21) == 0); + + /* Test sd_is_empty. */ + ASSERT (sd_is_empty (s0)); + ASSERT (!sd_is_empty (s1)); + ASSERT (!sd_is_empty (s2)); + + /* Test sd_startswith. */ + ASSERT (sd_startswith (s1, s0)); + ASSERT (!sd_startswith (s0, s1)); + ASSERT (!sd_startswith (s1, s2)); + ASSERT (!sd_startswith (s2, s1)); + ASSERT (sd_startswith (s2, sd_from_c ("The"))); + ASSERT (sd_startswith (s2, sd_new_addr (9, "The\0quick"))); + ASSERT (!sd_startswith (s2, sd_new_addr (9, "The\0quirk"))); + + /* Test sd_endswith. */ + ASSERT (sd_endswith (s1, s0)); + ASSERT (!sd_endswith (s0, s1)); + ASSERT (!sd_endswith (s1, s2)); + ASSERT (!sd_endswith (s2, s1)); + ASSERT (!sd_endswith (s2, sd_from_c ("fox"))); + ASSERT (sd_endswith (s2, sd_new_addr (4, "fox"))); + ASSERT (sd_endswith (s2, sd_new_addr (6, "\0\0fox"))); + ASSERT (!sd_endswith (s2, sd_new_addr (5, "\0\0ox"))); + + /* Test sd_cmp. */ + ASSERT (sd_cmp (s0, s0) == 0); + ASSERT (sd_cmp (s0, s1) < 0); + ASSERT (sd_cmp (s0, s2) < 0); + ASSERT (sd_cmp (s1, s0) > 0); + ASSERT (sd_cmp (s1, s1) == 0); + ASSERT (sd_cmp (s1, s2) < 0); + ASSERT (sd_cmp (s2, s0) > 0); + ASSERT (sd_cmp (s2, s1) > 0); + ASSERT (sd_cmp (s2, s2) == 0); + + /* Test sd_c_casecmp. */ + ASSERT (sd_c_casecmp (s0, s0) == 0); + ASSERT (sd_c_casecmp (s0, s1) < 0); + ASSERT (sd_c_casecmp (s0, s2) < 0); + ASSERT (sd_c_casecmp (s1, s0) > 0); + ASSERT (sd_c_casecmp (s1, s1) == 0); + ASSERT (sd_c_casecmp (s1, s2) < 0); + ASSERT (sd_c_casecmp (s2, s0) > 0); + ASSERT (sd_c_casecmp (s2, s1) > 0); + ASSERT (sd_c_casecmp (s2, s2) == 0); + ASSERT (sd_c_casecmp (sd_from_c ("acab"), sd_from_c ("AcAB")) == 0); + ASSERT (sd_c_casecmp (sd_from_c ("AcAB"), sd_from_c ("acab")) == 0); + ASSERT (sd_c_casecmp (sd_from_c ("aca"), sd_from_c ("AcAB")) < 0); + ASSERT (sd_c_casecmp (sd_from_c ("AcAB"), sd_from_c ("aca")) > 0); + ASSERT (sd_c_casecmp (sd_from_c ("aca"), sd_from_c ("Aca\377")) < 0); + ASSERT (sd_c_casecmp (sd_from_c ("Aca\377"), sd_from_c ("aca")) > 0); + + /* Test sd_index. */ + ASSERT (sd_index (s0, 'o') == -1); + ASSERT (sd_index (s2, 'o') == 12); + + /* Test sd_last_index. */ + ASSERT (sd_last_index (s0, 'o') == -1); + ASSERT (sd_last_index (s2, 'o') == 18); + + /* Test sd_contains. */ + ASSERT (sd_contains (s0, sd_from_c ("ll")) == -1); + ASSERT (sd_contains (s1, sd_from_c ("ll")) == 2); + ASSERT (sd_contains (s1, sd_new_addr (1, "")) == -1); + ASSERT (sd_contains (s2, sd_new_addr (1, "")) == 3); + ASSERT (sd_contains (s1, sd_new_addr (2, "\0")) == -1); + ASSERT (sd_contains (s2, sd_new_addr (2, "\0")) == 15); + + /* Test sd_substring. */ + ASSERT (sd_cmp (sd_substring (s1, 2, 5), + sd_from_c ("llo")) == 0); + + /* Test sd_write. */ + ASSERT (sd_write (fd3, s0) == 0); + ASSERT (sd_write (fd3, s1) == 0); + ASSERT (sd_write (fd3, s2) == 0); + + /* Test sd_fwrite. */ + ASSERT (sd_fwrite (stdout, s0) == 0); + ASSERT (sd_fwrite (stdout, s1) == 0); + ASSERT (sd_fwrite (stdout, s2) == 0); + + /* Test sd_new, sd_set_char_at, sd_fill. */ string_desc_t s4; - ASSERT (string_desc_new (&s4, 5) == 0); - string_desc_set_char_at (s4, 0, 'H'); - string_desc_set_char_at (s4, 4, 'o'); - string_desc_set_char_at (s4, 1, 'e'); - string_desc_fill (s4, 2, 4, 'l'); - ASSERT (string_desc_length (s4) == 5); - ASSERT (string_desc_startswith (s1, s4)); - - /* Test string_desc_new_filled, string_desc_set_char_at. */ + ASSERT (sd_new (&s4, 5) == 0); + sd_set_char_at (s4, 0, 'H'); + sd_set_char_at (s4, 4, 'o'); + sd_set_char_at (s4, 1, 'e'); + sd_fill (s4, 2, 4, 'l'); + ASSERT (sd_length (s4) == 5); + ASSERT (sd_startswith (s1, s4)); + + /* Test sd_new_filled, sd_set_char_at. */ string_desc_t s5; - ASSERT (string_desc_new_filled (&s5, 5, 'l') == 0); - string_desc_set_char_at (s5, 0, 'H'); - string_desc_set_char_at (s5, 4, 'o'); - string_desc_set_char_at (s5, 1, 'e'); - ASSERT (string_desc_length (s5) == 5); - ASSERT (string_desc_startswith (s1, s5)); - - /* Test string_desc_equals. */ - ASSERT (!string_desc_equals (s1, s5)); - ASSERT (string_desc_equals (s4, s5)); - - /* Test string_desc_copy, string_desc_free. */ + ASSERT (sd_new_filled (&s5, 5, 'l') == 0); + sd_set_char_at (s5, 0, 'H'); + sd_set_char_at (s5, 4, 'o'); + sd_set_char_at (s5, 1, 'e'); + ASSERT (sd_length (s5) == 5); + ASSERT (sd_startswith (s1, s5)); + + /* Test sd_equals. */ + ASSERT (!sd_equals (s1, s5)); + ASSERT (sd_equals (s4, s5)); + + /* Test sd_copy, sd_free. */ { string_desc_t s6; - ASSERT (string_desc_copy (&s6, s0) == 0); - ASSERT (string_desc_is_empty (s6)); - string_desc_free (s6); + ASSERT (sd_copy (&s6, s0) == 0); + ASSERT (sd_is_empty (s6)); + sd_free (s6); } { string_desc_t s6; - ASSERT (string_desc_copy (&s6, s2) == 0); - ASSERT (string_desc_equals (s6, s2)); - string_desc_free (s6); + ASSERT (sd_copy (&s6, s2) == 0); + ASSERT (sd_equals (s6, s2)); + sd_free (s6); } - /* Test string_desc_overwrite. */ + /* Test sd_overwrite. */ { string_desc_t s7; - ASSERT (string_desc_copy (&s7, s2) == 0); - string_desc_overwrite (s7, 4, s1); - ASSERT (string_desc_equals (s7, string_desc_new_addr (21, "The\0Hello world!\0fox"))); + ASSERT (sd_copy (&s7, s2) == 0); + sd_overwrite (s7, 4, s1); + ASSERT (sd_equals (s7, sd_new_addr (21, "The\0Hello world!\0fox"))); } - /* Test string_desc_concat. */ + /* Test sd_concat. */ { string_desc_t s8; - ASSERT (string_desc_concat (&s8, 3, string_desc_new_addr (10, "The\0quick"), - string_desc_new_addr (7, "brown\0"), - string_desc_new_addr (4, "fox"), - string_desc_new_addr (7, "unused")) == 0); - ASSERT (string_desc_equals (s8, s2)); - string_desc_free (s8); + ASSERT (sd_concat (&s8, 3, sd_new_addr (10, "The\0quick"), + sd_new_addr (7, "brown\0"), + sd_new_addr (4, "fox"), + sd_new_addr (7, "unused")) == 0); + ASSERT (sd_equals (s8, s2)); + sd_free (s8); } - /* Test string_desc_c. */ + /* Test sd_c. */ { - char *ptr = string_desc_c (s2); + char *ptr = sd_c (s2); ASSERT (ptr != NULL); ASSERT (memcmp (ptr, "The\0quick\0brown\0\0fox\0", 22) == 0); free (ptr); diff --git a/tests/test-string-desc.sh b/tests/test-string-desc.sh index a4d92792eb..a6ee1ac424 100755 --- a/tests/test-string-desc.sh +++ b/tests/test-string-desc.sh @@ -6,7 +6,7 @@ ${CHECKER} test-string-desc${EXEEXT} test-string-desc-3.tmp > test-string-desc-1 printf 'Hello world!The\0quick\0brown\0\0fox\0' > test-string-desc.ok : "${DIFF=diff}" -${DIFF} test-string-desc.ok test-string-desc-1.tmp || { echo "string_desc_fwrite KO" 1>&2; Exit 1; } -${DIFF} test-string-desc.ok test-string-desc-3.tmp || { echo "string_desc_write KO" 1>&2; Exit 1; } +${DIFF} test-string-desc.ok test-string-desc-1.tmp || { echo "sd_fwrite KO" 1>&2; Exit 1; } +${DIFF} test-string-desc.ok test-string-desc-3.tmp || { echo "sd_write KO" 1>&2; Exit 1; } Exit 0 diff --git a/tests/test-xstring-desc.c b/tests/test-xstring-desc.c index 8d361d0770..d740634049 100644 --- a/tests/test-xstring-desc.c +++ b/tests/test-xstring-desc.c @@ -28,53 +28,53 @@ int main (void) { - string_desc_t s0 = string_desc_new_empty (); - string_desc_t s1 = string_desc_from_c ("Hello world!"); - string_desc_t s2 = string_desc_new_addr (21, "The\0quick\0brown\0\0fox"); + string_desc_t s0 = sd_new_empty (); + string_desc_t s1 = sd_from_c ("Hello world!"); + string_desc_t s2 = sd_new_addr (21, "The\0quick\0brown\0\0fox"); - /* Test xstring_desc_new. */ - string_desc_t s4 = xstring_desc_new (5); - string_desc_set_char_at (s4, 0, 'H'); - string_desc_set_char_at (s4, 4, 'o'); - string_desc_set_char_at (s4, 1, 'e'); - string_desc_fill (s4, 2, 4, 'l'); - ASSERT (string_desc_length (s4) == 5); - ASSERT (string_desc_startswith (s1, s4)); + /* Test xsd_new. */ + string_desc_t s4 = xsd_new (5); + sd_set_char_at (s4, 0, 'H'); + sd_set_char_at (s4, 4, 'o'); + sd_set_char_at (s4, 1, 'e'); + sd_fill (s4, 2, 4, 'l'); + ASSERT (sd_length (s4) == 5); + ASSERT (sd_startswith (s1, s4)); - /* Test xstring_desc_new_filled. */ - string_desc_t s5 = xstring_desc_new_filled (5, 'l'); - string_desc_set_char_at (s5, 0, 'H'); - string_desc_set_char_at (s5, 4, 'o'); - string_desc_set_char_at (s5, 1, 'e'); - ASSERT (string_desc_length (s5) == 5); - ASSERT (string_desc_startswith (s1, s5)); + /* Test xsd_new_filled. */ + string_desc_t s5 = xsd_new_filled (5, 'l'); + sd_set_char_at (s5, 0, 'H'); + sd_set_char_at (s5, 4, 'o'); + sd_set_char_at (s5, 1, 'e'); + ASSERT (sd_length (s5) == 5); + ASSERT (sd_startswith (s1, s5)); - /* Test xstring_desc_copy. */ + /* Test xsd_copy. */ { - string_desc_t s6 = xstring_desc_copy (s0); - ASSERT (string_desc_is_empty (s6)); - string_desc_free (s6); + string_desc_t s6 = xsd_copy (s0); + ASSERT (sd_is_empty (s6)); + sd_free (s6); } { - string_desc_t s6 = xstring_desc_copy (s2); - ASSERT (string_desc_equals (s6, s2)); - string_desc_free (s6); + string_desc_t s6 = xsd_copy (s2); + ASSERT (sd_equals (s6, s2)); + sd_free (s6); } - /* Test xstring_desc_concat. */ + /* Test xsd_concat. */ { string_desc_t s8 = - xstring_desc_concat (3, string_desc_new_addr (10, "The\0quick"), - string_desc_new_addr (7, "brown\0"), - string_desc_new_addr (4, "fox"), - string_desc_new_addr (7, "unused")); - ASSERT (string_desc_equals (s8, s2)); - string_desc_free (s8); + xsd_concat (3, sd_new_addr (10, "The\0quick"), + sd_new_addr (7, "brown\0"), + sd_new_addr (4, "fox"), + sd_new_addr (7, "unused")); + ASSERT (sd_equals (s8, s2)); + sd_free (s8); } - /* Test xstring_desc_c. */ + /* Test xsd_c. */ { - char *ptr = xstring_desc_c (s2); + char *ptr = xsd_c (s2); ASSERT (ptr != NULL); ASSERT (memcmp (ptr, "The\0quick\0brown\0\0fox\0", 22) == 0); free (ptr); -- 2.39.5