102void string_set(
string* str,
const char* new_value);
125string**
string_split(
const string* str,
const char* delimiter,
136 const char* new_substring);
void string_set(string *str, const char *new_value)
Overwrites the current content of the string with a new value.
Definition base_string.c:85
char * string_to_c(const string *str)
Returns a pointer to the internal C-style null-terminated string.
Definition base_string.c:69
void string_replace(string *str, const char *old_substring, const char *new_substring)
Replaces all occurrences of a target substring with a new substring.
Definition base_string.c:154
void string_destroy(string *str)
Destroys a string instance and frees its allocated memory.
Definition base_string.c:27
string ** string_split(const string *str, const char *delimiter, size_t *num_tokens)
Splits the string into an array of tokens using a specified delimiter.
Definition base_string.c:107
size_t string_length(const string *str)
Retrieves the current length of the string.
Definition base_string.c:34
size_t string_capacity(const string *str)
Retrieves the current capacity of the string buffer.
Definition base_string.c:36
int string_contains(const string *str, const char *substring)
Checks if the string contains a specific substring.
Definition base_string.c:99
void string_reserve(string *str, size_t new_capacity)
Ensures that the string buffer has at least the specified capacity.
Definition base_string.c:71
int string_compare(const string *str_1, const string *str_2)
Lexicographically compares two string instances.
Definition base_string.c:54
void string_concat(string *str, const char *suffix)
Appends a C-string to the end of the existing string.
Definition base_string.c:38
void string_clear(string *str)
Clears the contents of the string, resetting its size to 0 without reallocating memory.
Definition base_string.c:62
string * string_create(const char *initial)
Creates and initializes a new string instance.
Definition base_string.c:7
Structure representing a dynamic string with capacity tracking.
Definition base_string.h:9
size_t capacity
Definition base_string.h:14
char * data
Definition base_string.h:10
size_t size
Definition base_string.h:11