diff options
Diffstat (limited to 'dev/Kernel/NewKit/Variant.hxx')
| -rw-r--r-- | dev/Kernel/NewKit/Variant.hxx | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/dev/Kernel/NewKit/Variant.hxx b/dev/Kernel/NewKit/Variant.hxx deleted file mode 100644 index b60d2824..00000000 --- a/dev/Kernel/NewKit/Variant.hxx +++ /dev/null @@ -1,64 +0,0 @@ -/* ------------------------------------------- - - Copyright ZKA Technologies. - -------------------------------------------- */ - -#pragma once - -#include <NewKit/Defines.hxx> -#include <NewKit/String.hxx> -#include <NewKit/Json.hxx> - -namespace Kernel -{ - class Variant final - { - public: - enum class VariantKind - { - kString, - kBlob, - kNull, - kJson, - }; - - public: - explicit Variant() = delete; - - public: - Variant& operator=(const Variant&) = default; - Variant(const Variant&) = default; - - ~Variant() = default; - - public: - explicit Variant(StringView* stringView) - : fPtr((voidPtr)stringView), fKind(VariantKind::kString) - { - } - - explicit Variant(JsonType* json) - : fPtr((voidPtr)json), fKind(VariantKind::kJson) - { - } - - explicit Variant(nullPtr) - : fPtr(nullptr), fKind(VariantKind::kNull) - { - } - - explicit Variant(voidPtr ptr) - : fPtr(ptr), fKind(VariantKind::kBlob) - { - } - - public: - const Char* ToString(); - VoidPtr Leak(); - - private: - voidPtr fPtr{nullptr}; - VariantKind fKind{VariantKind::kNull}; - }; -} // namespace Kernel |
