diff options
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 |
