1
1
mirror of https://github.com/theoludwig/libcproject.git synced 2025-05-21 23:21:15 +02:00

perf: mutate strings instead of copy when possible

BREAKING CHANGE: Most of string functions mutates the string instead of copying now.
This allows better performance when copy is not needed.
It also allows more granual control.
If copy is wanted, simply use `string_copy` before calling the function.

Impacted functions are:
`string_to_uppercase`, `string_to_lowercase`, `string_replace`,
`string_trim_start`, `string_trim_end`, `string_trim`,
`string_capitalize`, `string_reverse`
This commit is contained in:
2023-08-06 23:17:07 +02:00
parent 01e9b71402
commit 72645da4b2
10 changed files with 193 additions and 222 deletions

View File

@ -11,21 +11,21 @@
* @brief Append a character to a string, assuming string points to an array
* with enough space.
*
* @param string_value
* @p
* @param character
* @since v1.0.0
*/
void character_append(string_t string_value, char character);
void character_append(string_t string, char character);
/**
* @brief Append a character to a string at a specific index, assuming string points to an array with enough space.
*
* @param string_value
* @param string
* @param character
* @param index
* @since v1.0.0
*/
void character_append_at(string_t string_value, const char character, const size_t index);
void character_append_at(string_t string, const char character, const size_t index);
/**
* @brief Converts the character to uppercase.