cstring_compare

This commit is contained in:
Krzosa Karol
2023-03-29 21:17:26 +02:00
parent cf8478e941
commit 000cc7a813

View File

@@ -53,6 +53,21 @@ is_alphanumeric(U8 a) {
return result; return result;
} }
CORE_Static S64
string_len(char *string) {
S64 len = 0;
while (*string++ != 0) len++;
return len;
}
CORE_Static String
string_from_cstring(char *string) {
String result;
result.str = (U8 *)string;
result.len = string_len(string);
return result;
}
CORE_Static B32 CORE_Static B32
string_compare(String a, String b, B32 ignore_case = false) { string_compare(String a, String b, B32 ignore_case = false) {
if (a.len != b.len) if (a.len != b.len)
@@ -70,6 +85,11 @@ string_compare(String a, String b, B32 ignore_case = false) {
return true; return true;
} }
CORE_Static B32
cstring_compare(char *a, char *b, B32 ignore_case = false) {
return string_compare(string_from_cstring(a), string_from_cstring(b), ignore_case);
}
CORE_Static B32 CORE_Static B32
operator==(String a, String b) { operator==(String a, String b) {
return string_compare(a, b); return string_compare(a, b);
@@ -434,21 +454,6 @@ string_skip_to_last_period(String s) {
return result; return result;
} }
CORE_Static S64
string_len(char *string) {
S64 len = 0;
while (*string++ != 0) len++;
return len;
}
CORE_Static String
string_from_cstring(char *string) {
String result;
result.str = (U8 *)string;
result.len = string_len(string);
return result;
}
struct String_Replace { struct String_Replace {
String find; String find;
String replace; String replace;