mirror of
https://github.com/thunderbrewhq/squall.git
synced 2025-12-12 10:32:29 +00:00
feat(string): add non-const string functions and fix narrowing warning
* feat(string): add non-const SStrChr and SStrChrR implementations * fix(string): resolve narrowing conversion warnings in function SStrPack
This commit is contained in:
parent
c42164ea5f
commit
23fb94c19d
2 changed files with 40 additions and 2 deletions
|
|
@ -206,6 +206,25 @@ void SStrInitialize() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char* SStrChr(char* string, char search) {
|
||||||
|
STORM_ASSERT(string);
|
||||||
|
STORM_VALIDATE(string, ERROR_INVALID_PARAMETER, nullptr);
|
||||||
|
|
||||||
|
if (!*string) {
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (*string != search) {
|
||||||
|
string++;
|
||||||
|
|
||||||
|
if (!*string) {
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return string;
|
||||||
|
}
|
||||||
|
|
||||||
const char* SStrChr(const char* string, char search) {
|
const char* SStrChr(const char* string, char search) {
|
||||||
STORM_ASSERT(string);
|
STORM_ASSERT(string);
|
||||||
STORM_VALIDATE(string, ERROR_INVALID_PARAMETER, nullptr);
|
STORM_VALIDATE(string, ERROR_INVALID_PARAMETER, nullptr);
|
||||||
|
|
@ -225,6 +244,21 @@ const char* SStrChr(const char* string, char search) {
|
||||||
return string;
|
return string;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char* SStrChrR(char* string, char search) {
|
||||||
|
STORM_ASSERT(string);
|
||||||
|
STORM_VALIDATE(string, ERROR_INVALID_PARAMETER, nullptr);
|
||||||
|
|
||||||
|
char* result;
|
||||||
|
|
||||||
|
for (result = nullptr; *string; string++) {
|
||||||
|
if (*string == search) {
|
||||||
|
result = string;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
const char* SStrChrR(const char* string, char search) {
|
const char* SStrChrR(const char* string, char search) {
|
||||||
STORM_ASSERT(string);
|
STORM_ASSERT(string);
|
||||||
STORM_VALIDATE(string, ERROR_INVALID_PARAMETER, nullptr);
|
STORM_VALIDATE(string, ERROR_INVALID_PARAMETER, nullptr);
|
||||||
|
|
@ -378,14 +412,14 @@ uint32_t SStrPack(char* dest, const char* source, uint32_t destsize) {
|
||||||
|
|
||||||
if (!*v5) {
|
if (!*v5) {
|
||||||
*i = '\0';
|
*i = '\0';
|
||||||
return i - dest;
|
return static_cast<uint32_t>(i - dest);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
*i = '\0';
|
*i = '\0';
|
||||||
return i - dest;
|
return static_cast<uint32_t>(i - dest);
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t SStrPrintf(char* dest, size_t maxchars, const char* format, ...) {
|
size_t SStrPrintf(char* dest, size_t maxchars, const char* format, ...) {
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,12 @@
|
||||||
#define STORM_MAX_PATH 260
|
#define STORM_MAX_PATH 260
|
||||||
#define STORM_MAX_STR 0x7FFFFFFF
|
#define STORM_MAX_STR 0x7FFFFFFF
|
||||||
|
|
||||||
|
char* SStrChr(char* string, char search);
|
||||||
|
|
||||||
const char* SStrChr(const char* string, char search);
|
const char* SStrChr(const char* string, char search);
|
||||||
|
|
||||||
|
char* SStrChrR(char* string, char search);
|
||||||
|
|
||||||
const char* SStrChrR(const char* string, char search);
|
const char* SStrChrR(const char* string, char search);
|
||||||
|
|
||||||
int32_t SStrCmp(const char* string1, const char* string2, size_t maxchars);
|
int32_t SStrCmp(const char* string1, const char* string2, size_t maxchars);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue