Introduce string_new_replace(3)
This commit is contained in:
parent
b9f422c976
commit
3a9c6cc403
|
@ -36,6 +36,8 @@ String * string_new(String const * string);
|
|||
String * string_new_append(String const * string, ...);
|
||||
String * string_new_format(String const * format, ...);
|
||||
String * string_new_length(String const * string, size_t length);
|
||||
String * string_new_replace(String const * string, String const * what,
|
||||
String const * by);
|
||||
void string_delete(String * string);
|
||||
|
||||
/* accessors */
|
||||
|
|
17
src/string.c
17
src/string.c
|
@ -114,6 +114,23 @@ String * string_new_length(String const * string, size_t length)
|
|||
}
|
||||
|
||||
|
||||
/* string_new_replace */
|
||||
String * string_new_replace(String const * string, String const * what,
|
||||
String const * by)
|
||||
{
|
||||
String * ret;
|
||||
|
||||
if((ret = string_new(string)) == NULL)
|
||||
return NULL;
|
||||
if(string_replace(&ret, what, by) != 0)
|
||||
{
|
||||
string_delete(ret);
|
||||
return NULL;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/* string_delete */
|
||||
void string_delete(String * string)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user