diff options
| author | untodesu <kirill@untode.su> | 2025-09-11 13:48:31 +0500 |
|---|---|---|
| committer | untodesu <kirill@untode.su> | 2025-09-11 13:48:31 +0500 |
| commit | aaed751bf4430bf4b9b30cef532b8753b9f639ce (patch) | |
| tree | 16bc751c272ba27ad53ec48dbdd3a6d9e6a8d4c2 /core/config/string.hh | |
| parent | 96bd73ae020ecca1f94698744c77498a89ad19f7 (diff) | |
| download | voxelius-aaed751bf4430bf4b9b30cef532b8753b9f639ce.tar.bz2 voxelius-aaed751bf4430bf4b9b30cef532b8753b9f639ce.zip | |
Replace most of C strings with string_view
Diffstat (limited to 'core/config/string.hh')
| -rw-r--r-- | core/config/string.hh | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/core/config/string.hh b/core/config/string.hh index 09d14c9..772c330 100644 --- a/core/config/string.hh +++ b/core/config/string.hh @@ -8,15 +8,28 @@ namespace config { class String : public IValue { public: - explicit String(const char* default_value); + explicit String(std::string_view default_value); virtual ~String(void) = default; - virtual void set(const char* value) override; - virtual const char* get(void) const override; + virtual void set(std::string_view value) override; + virtual std::string_view get(void) const override; + + constexpr const std::string& get_value(void) const noexcept; + constexpr const char* c_str(void) const noexcept; private: std::string m_value; }; } // namespace config +constexpr const std::string& config::String::get_value(void) const noexcept +{ + return m_value; +} + +constexpr const char* config::String::c_str(void) const noexcept +{ + return m_value.c_str(); +} + #endif // CORE_CONFIG_STRING_HH |
