summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/UtfUtils.cc
diff options
context:
space:
mode:
authorAmlal <amlal@nekernel.org>2025-04-27 23:31:27 +0200
committerAmlal <amlal@nekernel.org>2025-04-27 23:31:27 +0200
commit8a7396493c3effb356d2dc4484b993b4698bc422 (patch)
tree1726a7342eaf1ae3adaefbfe019e20cff9b9ab09 /dev/kernel/src/UtfUtils.cc
parent11dd858e1d9da71a182bc707ca3a481dafbccbe4 (diff)
dev, kernel: HeFS had to be redesigned to be less problematic with hard-drives.
why? the struct were way too big to fit wihin a sector. Signed-off-by: Amlal <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/src/UtfUtils.cc')
-rw-r--r--dev/kernel/src/UtfUtils.cc33
1 files changed, 33 insertions, 0 deletions
diff --git a/dev/kernel/src/UtfUtils.cc b/dev/kernel/src/UtfUtils.cc
new file mode 100644
index 00000000..db1dfaf4
--- /dev/null
+++ b/dev/kernel/src/UtfUtils.cc
@@ -0,0 +1,33 @@
+/* -------------------------------------------
+
+ Copyright (C) 2025, Amlal El Mahrouss, all rights reserved.
+
+------------------------------------------- */
+
+#include <NewKit/Utils.h>
+
+namespace Kernel {
+Size urt_string_len(const Utf8Char* str) {
+ SizeT len{0};
+
+ while (str[len] != u'\0') ++len;
+
+ return len;
+}
+
+Int urt_copy_memory(const voidPtr src, voidPtr dst, Size len) {
+ Utf8Char* srcChr = reinterpret_cast<Utf8Char*>(src);
+ Utf8Char* dstChar = reinterpret_cast<Utf8Char*>(dst);
+
+ Size index = 0;
+
+ while (index < len) {
+ dstChar[index] = srcChr[index];
+ ++index;
+ }
+
+ dstChar[index] = 0;
+
+ return index;
+}
+} // namespace Kernel \ No newline at end of file