From f7023f6a08e117d483b5928fd4301062a3384abf Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sun, 21 Dec 2025 19:06:44 +0100 Subject: feat: kernel: JSON/TOML improvements and UPS/Interrupt improvements. details: - Interrupt: ARM64 specific HAL fix. - UPS: Remove DoVet method. Signed-off-by: Amlal El Mahrouss --- src/kernel/NeKit/Json.h | 8 ++++---- src/kernel/NeKit/TOML.h | 9 +++++++++ 2 files changed, 13 insertions(+), 4 deletions(-) (limited to 'src/kernel/NeKit') diff --git a/src/kernel/NeKit/Json.h b/src/kernel/NeKit/Json.h index c2143651..44db52ba 100644 --- a/src/kernel/NeKit/Json.h +++ b/src/kernel/NeKit/Json.h @@ -24,12 +24,12 @@ namespace Kernel { /// ================================================================================ -/// @brief JSON object representation. +/// @brief JSON Object type. /// ================================================================================ template class JsonObject final { public: - explicit JsonObject() : fUndefined(NO) { + JsonObject() : fUndefined(YES) { KBasicString key = KString(kNeJsonMaxLen); key += kNeJsonNullValue; @@ -37,7 +37,7 @@ class JsonObject final { this->AsValue() = key; } - explicit JsonObject(SizeT lhsLen, SizeT rhsLen) : fUndefined(NO), fKey(lhsLen), fValue(rhsLen) { + JsonObject(SizeT lhsLen, SizeT rhsLen) : fUndefined(NO), fKey(lhsLen), fValue(rhsLen) { KBasicString key = KString(lhsLen); this->AsKey() = key; @@ -53,7 +53,7 @@ class JsonObject final { Bool& IsUndefined() { return fUndefined; } private: - Bool fUndefined; // is this instance undefined? + Bool fUndefined{YES}; // is this instance undefined? KBasicString fKey; KBasicString fValue; diff --git a/src/kernel/NeKit/TOML.h b/src/kernel/NeKit/TOML.h index 3eaf5197..9249152b 100644 --- a/src/kernel/NeKit/TOML.h +++ b/src/kernel/NeKit/TOML.h @@ -7,11 +7,20 @@ #pragma once #include +#include namespace Kernel { +/// \brief TOML Object Handle class TOMLObject final { public: explicit TOMLObject() = delete; ~TOMLObject() = default; + + STATIC TOMLObject kNull; + + private: + Bool fUndefined{YES}; // is this instance undefined? + KString fKey; + KString fValue; }; } // namespace Kernel \ No newline at end of file -- cgit v1.2.3