diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-21 03:30:40 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-21 03:30:40 -0500 |
| commit | e3fa27827e7647a0ecc466f4d92097fe48fbbb43 (patch) | |
| tree | 33ba30655f555d37e3c970707b27413936e5a9ad /public/frameworks/CoreFoundation.fwrk/headers/String.h | |
| parent | c739255b48b3a5b2e184ca1a637f9f1f95c978ff (diff) | |
| parent | efefa7221a3fea3636a64f2bf067e2af75626f34 (diff) | |
Merge pull request #79 from nekernel-org/devv0.0.61
Kernel: OpenHeFS fixes and new components.
Diffstat (limited to 'public/frameworks/CoreFoundation.fwrk/headers/String.h')
| -rw-r--r-- | public/frameworks/CoreFoundation.fwrk/headers/String.h | 35 |
1 files changed, 30 insertions, 5 deletions
diff --git a/public/frameworks/CoreFoundation.fwrk/headers/String.h b/public/frameworks/CoreFoundation.fwrk/headers/String.h index 6fb2f817..247d3894 100644 --- a/public/frameworks/CoreFoundation.fwrk/headers/String.h +++ b/public/frameworks/CoreFoundation.fwrk/headers/String.h @@ -1,4 +1,3 @@ - /* ======================================== Copyright (C) 2025, Amlal El Mahrouss, licensed under the Apache 2.0 license. @@ -8,16 +7,42 @@ #pragma once #include <CoreFoundation.fwrk/headers/Object.h> +#include <CoreFoundation.fwrk/headers/Ref.h> namespace CF { class CFString; +class CFStringBuilder; +/// ================================================================================ +/// @brief CFString class for string manipulations. +/// ================================================================================ class CFString final CF_OBJECT { public: - CFString() = default; - ~CFString() = default; + CFString() = delete; + + explicit CFString(const SizeT sz); + explicit CFString(const Char* str); + + ~CFString(); + + const char* asBytes() const; + + LIBSYS_COPY_DELETE(CFString); + + private: + Char* mStr{nullptr}; +}; + +/// ================================================================================ +/// @brief CFStringBuilder class for string manipulations. +/// ================================================================================ +class CFStringBuilder final { + public: + static CFRef<CFString> Construct(const Char*); + static const Char* FromBool(const Char*, BOOL); + static const Char* Format(const Char*, const Char*); - CFString(const CFString&) = delete; - CFString& operator=(const CFString&) = delete; + static BOOL Equals(const Char, const Char*); + static BOOL Equals(const Char*, const Char*); }; } // namespace CF
\ No newline at end of file |
