summaryrefslogtreecommitdiffhomepage
path: root/public/frameworks/CoreFoundation.fwrk/headers/Array.h
diff options
context:
space:
mode:
Diffstat (limited to 'public/frameworks/CoreFoundation.fwrk/headers/Array.h')
-rw-r--r--public/frameworks/CoreFoundation.fwrk/headers/Array.h105
1 files changed, 43 insertions, 62 deletions
diff --git a/public/frameworks/CoreFoundation.fwrk/headers/Array.h b/public/frameworks/CoreFoundation.fwrk/headers/Array.h
index e9a36ac4..0b4a8dbf 100644
--- a/public/frameworks/CoreFoundation.fwrk/headers/Array.h
+++ b/public/frameworks/CoreFoundation.fwrk/headers/Array.h
@@ -1,6 +1,6 @@
/* -------------------------------------------
- Copyright (C) 2024-2025, Amlal El Mahrouss, all rights reserved.
+ Copyright (C) 2024-2025, Amlal El Mahrouss, all rights reserved.
------------------------------------------- */
@@ -8,64 +8,45 @@
#include <user/SystemCalls.h>
-namespace CF
-{
- template <typename T, SizeT N>
- class CFArray final
- {
- public:
- explicit CFArray() = default;
- ~CFArray() = default;
-
- CFArray& operator=(const CFArray&) = default;
- CFArray(const CFArray&) = default;
-
- T& operator[](SizeT at)
- {
- MUST_PASS(at < this->Count());
- return fArray[at];
- }
-
- Bool Empty()
- {
- return this->Count() > 0;
- }
-
- SizeT Capacity()
- {
- return N;
- }
-
- SizeT Count()
- {
- auto cnt = 0UL;
-
- for (auto i = 0UL; i < N; ++i)
- {
- if (fArray[i])
- ++cnt;
- }
-
- return cnt;
- }
-
- const T* CData()
- {
- return fArray;
- }
-
- operator bool()
- {
- return !Empty();
- }
-
- private:
- T fArray[N] = {nullptr};
- };
-
- template <typename ValueType>
- auto make_array(ValueType val)
- {
- return CFArray<ValueType, ARRAY_SIZE(val)>{val};
- }
-} // namespace CF
+namespace CF {
+template <typename T, SizeT N>
+class CFArray final {
+ public:
+ explicit CFArray() = default;
+ ~CFArray() = default;
+
+ CFArray& operator=(const CFArray&) = default;
+ CFArray(const CFArray&) = default;
+
+ T& operator[](SizeT at) {
+ MUST_PASS(at < this->Count());
+ return fArray[at];
+ }
+
+ Bool Empty() { return this->Count() > 0; }
+
+ SizeT Capacity() { return N; }
+
+ SizeT Count() {
+ auto cnt = 0UL;
+
+ for (auto i = 0UL; i < N; ++i) {
+ if (fArray[i]) ++cnt;
+ }
+
+ return cnt;
+ }
+
+ const T* CData() { return fArray; }
+
+ operator bool() { return !Empty(); }
+
+ private:
+ T fArray[N] = {nullptr};
+};
+
+template <typename ValueType>
+auto make_array(ValueType val) {
+ return CFArray<ValueType, ARRAY_SIZE(val)>{val};
+}
+} // namespace CF