Cleanup: Convert string_utils to C++

Pretty much as-is conversion, so it is a C code in a C++ file.
This commit is contained in:
Sergey Sharybin 2023-10-18 16:46:04 +02:00 committed by Sergey Sharybin
parent 5a79023409
commit 6bbf7649d0
2 changed files with 22 additions and 24 deletions

View File

@ -142,7 +142,7 @@ set(SRC
intern/string_ref.cc
intern/string_search.cc
intern/string_utf8.c
intern/string_utils.c
intern/string_utils.cc
intern/system.c
intern/task_graph.cc
intern/task_iterator.c

View File

@ -269,9 +269,9 @@ size_t BLI_string_flip_side_name(char *name_dst,
BLI_string_debug_size(name_dst, name_dst_maxncpy);
size_t len;
char *prefix = alloca(name_dst_maxncpy); /* The part before the facing */
char *suffix = alloca(name_dst_maxncpy); /* The part after the facing */
char *number = alloca(name_dst_maxncpy); /* The number extension string */
char *prefix = static_cast<char *>(alloca(name_dst_maxncpy)); /* The part before the facing */
char *suffix = static_cast<char *>(alloca(name_dst_maxncpy)); /* The part after the facing */
char *number = static_cast<char *>(alloca(name_dst_maxncpy)); /* The number extension string */
const char *replace = NULL;
char *index = NULL;
bool is_set = false;
@ -400,8 +400,8 @@ void BLI_uniquename_cb(UniquenameCheckCallback unique_check,
if (unique_check(arg, name)) {
char numstr[16];
char *tempname = alloca(name_maxncpy);
char *left = alloca(name_maxncpy);
char *tempname = static_cast<char *>(alloca(name_maxncpy));
char *left = static_cast<char *>(alloca(name_maxncpy));
int number;
size_t len = BLI_string_split_name_number(name, delim, left, &number);
do {
@ -435,11 +435,10 @@ void BLI_uniquename_cb(UniquenameCheckCallback unique_check,
*/
static bool uniquename_find_dupe(ListBase *list, void *vlink, const char *name, int name_offset)
{
Link *link;
for (link = list->first; link; link = link->next) {
for (Link *link = static_cast<Link *>(list->first); link; link = link->next) {
if (link != vlink) {
if (STREQ(POINTER_OFFSET((const char *)link, name_offset), name)) {
if (STREQ(static_cast<const char *>(POINTER_OFFSET((const char *)link, name_offset)), name))
{
return true;
}
}
@ -448,13 +447,16 @@ static bool uniquename_find_dupe(ListBase *list, void *vlink, const char *name,
return false;
}
struct UniqueNameCheckData {
ListBase *lb;
void *vlink;
int name_offset;
};
static bool uniquename_unique_check(void *arg, const char *name)
{
struct {
ListBase *lb;
void *vlink;
int name_offset;
} *data = arg;
UniqueNameCheckData *data = static_cast<UniqueNameCheckData *>(arg);
return uniquename_find_dupe(data->lb, data->vlink, name, data->name_offset);
}
@ -465,11 +467,7 @@ void BLI_uniquename(ListBase *list,
int name_offset,
size_t name_maxncpy)
{
struct {
ListBase *lb;
void *vlink;
int name_offset;
} data;
UniqueNameCheckData data{};
data.lb = list;
data.vlink = vlink;
data.name_offset = name_offset;
@ -485,7 +483,7 @@ void BLI_uniquename(ListBase *list,
&data,
defname,
delim,
POINTER_OFFSET(vlink, name_offset),
static_cast<char *>(POINTER_OFFSET(vlink, name_offset)),
name_maxncpy);
}
@ -562,7 +560,7 @@ size_t BLI_string_join_array_by_sep_char(
char *BLI_string_join_arrayN(const char *strings[], uint strings_num)
{
const size_t result_size = BLI_string_len_array(strings, strings_num) + 1;
char *result = MEM_mallocN(sizeof(char) * result_size, __func__);
char *result = MEM_cnew_array<char>(result_size, __func__);
char *c = result;
for (uint i = 0; i < strings_num; i++) {
const size_t string_len = strlen(strings[i]);
@ -579,7 +577,7 @@ char *BLI_string_join_array_by_sep_charN(char sep, const char *strings[], uint s
{
const size_t result_size = BLI_string_len_array(strings, strings_num) +
(strings_num ? strings_num - 1 : 0) + 1;
char *result = MEM_mallocN(sizeof(char) * result_size, __func__);
char *result = MEM_cnew_array<char>(result_size, __func__);
char *c = result;
if (strings_num != 0) {
for (uint i = 0; i < strings_num; i++) {
@ -609,7 +607,7 @@ char *BLI_string_join_array_by_sep_char_with_tableN(char sep,
result_size = 1;
}
char *result = MEM_mallocN(sizeof(char) * result_size, __func__);
char *result = MEM_cnew_array<char>(result_size, __func__);
char *c = result;
if (strings_num != 0) {
for (uint i = 0; i < strings_num; i++) {