From 05f8d9302d702ca35fa2b43790899cfd9cf59e11 Mon Sep 17 00:00:00 2001 From: WerWolv Date: Fri, 17 Oct 2025 23:47:03 +0200 Subject: [PATCH] impr: Add proper move constructors to UnlocalizedString --- lib/libimhex/include/hex/api/localization_manager.hpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/libimhex/include/hex/api/localization_manager.hpp b/lib/libimhex/include/hex/api/localization_manager.hpp index 98431be66..be8c40b76 100644 --- a/lib/libimhex/include/hex/api/localization_manager.hpp +++ b/lib/libimhex/include/hex/api/localization_manager.hpp @@ -102,6 +102,14 @@ EXPORT_MODULE namespace hex { UnlocalizedString(const std::string &string) : m_unlocalizedString(string) { } UnlocalizedString(const char *string) : m_unlocalizedString(string) { } UnlocalizedString(const Lang& arg) = delete; + UnlocalizedString(std::string &&string) : m_unlocalizedString(std::move(string)) { } + UnlocalizedString(UnlocalizedString &&) = default; + UnlocalizedString(const UnlocalizedString &) = default; + + UnlocalizedString &operator=(const UnlocalizedString &) = default; + UnlocalizedString &operator=(UnlocalizedString &&) = default; + UnlocalizedString &operator=(const std::string &string) { m_unlocalizedString = string; return *this; } + UnlocalizedString &operator=(std::string &&string) { m_unlocalizedString = std::move(string); return *this; } [[nodiscard]] operator std::string() const { return m_unlocalizedString;