From b59aedad89d4183135de4bd37ae8c8ae98b3e71b Mon Sep 17 00:00:00 2001 From: Abdelrahman Date: Mon, 29 Apr 2024 23:22:59 +0100 Subject: [PATCH] Add BasicString and StringView --- src/strings/basic_string/basic_string.c | 10 ------- src/strings/basic_string/basic_string.h | 25 ----------------- src/strings/basic_strings/basic_strings.h | 34 +++++++++++++++++++++++ 3 files changed, 34 insertions(+), 35 deletions(-) delete mode 100644 src/strings/basic_string/basic_string.c delete mode 100644 src/strings/basic_string/basic_string.h create mode 100644 src/strings/basic_strings/basic_strings.h diff --git a/src/strings/basic_string/basic_string.c b/src/strings/basic_string/basic_string.c deleted file mode 100644 index 560b746..0000000 --- a/src/strings/basic_string/basic_string.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "basic_string.h" -#include - -void wapp_bstr_print(const BasicString *str) { - if (!str) { - return; - } - - printf("%.*s\n", (i32)str->size, str->buf); -} diff --git a/src/strings/basic_string/basic_string.h b/src/strings/basic_string/basic_string.h deleted file mode 100644 index 646744b..0000000 --- a/src/strings/basic_string/basic_string.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef BASIC_STRING_H -#define BASIC_STRING_H - -#include "aliases.h" -#include - -#ifdef __cplusplus -extern "C" { -#endif // __cplusplus - -typedef struct bstr BasicString; -struct bstr { - u64 size; - const char *buf; -}; - -#define wapp_bstr_new(STR) \ - (BasicString) { .size = strlen(STR), .str = STR } -void wapp_bstr_print(const BasicString *str); - -#ifdef __cplusplus -} -#endif // __cplusplus - -#endif // !BASIC_STRING_H diff --git a/src/strings/basic_strings/basic_strings.h b/src/strings/basic_strings/basic_strings.h new file mode 100644 index 0000000..151c167 --- /dev/null +++ b/src/strings/basic_strings/basic_strings.h @@ -0,0 +1,34 @@ +#ifndef BASIC_STRING_H +#define BASIC_STRING_H + +#include "aliases.h" +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + +typedef struct bstr BasicString; +struct bstr { + u64 size; + const char *buf; +}; + +typedef struct strvw StringView; +struct strvw { + const u64 size; + const char *buf; +}; + +#define new_string(STR) \ + { .size = strlen(STR), .buf = STR } +#define wapp_bstr_new(STR) ((BasicString)new_string(STR)) +#define wapp_strvw_new(STR) ((StringView)new_string(STR)) +#define wapp_string_print(STR) (printf("%.*s\n", (i32)STR.size, STR.buf)) + +#ifdef __cplusplus +} +#endif // __cplusplus + +#endif // !BASIC_STRING_H