From 4dbbd721eb9db75d4968a624b8cb9e75e979a144 Mon Sep 17 00:00:00 2001 From: Alois Wohlschlager Date: Mon, 2 Sep 2024 20:09:35 +0200 Subject: treewide: consistently mark overridden settings as such Only overridden settings are sent to the daemon, and we're going to do the same for the build hook to. It needs to be ensured that overridden settings are in fact consistently marked as such, so that they actually get sent. Change-Id: I7cd58d925702f86cf2c35ad121eb191ceb62a355 --- src/libutil/config.hh | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) (limited to 'src/libutil/config.hh') diff --git a/src/libutil/config.hh b/src/libutil/config.hh index 59cc281c5..b3dcc122f 100644 --- a/src/libutil/config.hh +++ b/src/libutil/config.hh @@ -218,6 +218,7 @@ protected: virtual void convertToArg(Args & args, const std::string & category); bool isOverridden() const; + }; /** @@ -267,16 +268,12 @@ public: { } operator const T &() const { return value; } - operator T &() { return value; } const T & get() const { return value; } template bool operator ==(const U & v2) const { return value == v2; } template bool operator !=(const U & v2) const { return value != v2; } template - void operator =(const U & v) { assign(v); } - virtual void assign(const T & v) { value = v; } - template void setDefault(const U & v) { if (!overridden) value = v; } /** @@ -287,6 +284,8 @@ public: */ void set(const std::string & str, bool append = false, const ApplyConfigOptions & options = {}) override final; + void override(const T & v); + /** * C++ trick; This is template-specialized to compile-time indicate whether * the type is appendable. @@ -299,12 +298,6 @@ public: */ bool isAppendable() override final; - virtual void override(const T & v) - { - overridden = true; - value = v; - } - std::string to_string() const override; void convertToArg(Args & args, const std::string & category) override; @@ -349,8 +342,6 @@ public: : Setting(options, def, name, description, aliases, documentDefault, std::move(experimentalFeature), true) { } - - void operator =(const T & v) { this->assign(v); } }; /** @@ -375,8 +366,6 @@ public: } T parse(const std::string & str, const ApplyConfigOptions & options) const override; - - void operator =(const T & v) { this->assign(v); } }; -- cgit v1.2.3