From 41c145ab30b71babb78b395f0bedcd41cbdd645a Mon Sep 17 00:00:00 2001 From: zhenyan121 <3367366583@qq.com> Date: Sat, 18 Jul 2026 10:54:51 +0800 Subject: [PATCH] fix(config): load config on demand in get/set instead of asserting --- include/Cubed/config.hpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/include/Cubed/config.hpp b/include/Cubed/config.hpp index 5503819..540ee3c 100644 --- a/include/Cubed/config.hpp +++ b/include/Cubed/config.hpp @@ -1,5 +1,4 @@ #pragma once -#include "Cubed/tools/cubed_assert.hpp" #include "Cubed/tools/toml.utils.hpp" namespace Cubed { @@ -20,7 +19,9 @@ public: template T get(std::string_view key, T default_value) { - ASSERT(m_init); + if (!m_init) { + load_config(); + } if (auto* node = find_node(m_tbl, key)) { if (auto value = node->value()) return *value; @@ -32,7 +33,9 @@ public: } template void set(std::string_view key, T&& value) { - ASSERT(m_init); + if (!m_init) { + load_config(); + } auto pos = key.rfind('.'); toml::table* table;