diff --git a/src/libs/utils/smallstring.h b/src/libs/utils/smallstring.h index 56ab91a2f48..f502c7e7489 100644 --- a/src/libs/utils/smallstring.h +++ b/src/libs/utils/smallstring.h @@ -174,7 +174,7 @@ public: SmallStringView toStringView() const noexcept { return SmallStringView(data(), size()); } - operator SmallStringView() const noexcept { return SmallStringView(data(), size()); } + constexpr operator SmallStringView() const noexcept { return SmallStringView(data(), size()); } explicit operator QLatin1StringView() const noexcept { diff --git a/src/libs/utils/smallstringview.h b/src/libs/utils/smallstringview.h index 09b2a2abaf7..44940707696 100644 --- a/src/libs/utils/smallstringview.h +++ b/src/libs/utils/smallstringview.h @@ -110,36 +110,16 @@ public: } }; -constexpr bool operator!=(SmallStringView first, SmallStringView second) noexcept +inline constexpr auto operator<=>(const SmallStringView &first, const SmallStringView &second) { - return std::string_view{first} != std::string_view{second}; + return std::string_view{first} <=> std::string_view{second}; } -constexpr bool operator==(SmallStringView first, SmallStringView second) noexcept +inline constexpr bool operator==(const SmallStringView &first, const SmallStringView &second) { return std::string_view{first} == std::string_view{second}; } -constexpr bool operator<(SmallStringView first, SmallStringView second) noexcept -{ - return std::string_view{first} < std::string_view{second}; -} - -constexpr bool operator>(SmallStringView first, SmallStringView second) noexcept -{ - return std::string_view{first} > std::string_view{second}; -} - -constexpr bool operator<=(SmallStringView first, SmallStringView second) noexcept -{ - return std::string_view{first} <= std::string_view{second}; -} - -constexpr bool operator>=(SmallStringView first, SmallStringView second) noexcept -{ - return std::string_view{first} >= std::string_view{second}; -} - constexpr int compare(SmallStringView first, SmallStringView second) noexcept { return first.compare(second); diff --git a/src/plugins/qmldesigner/components/componentcore/viewmanager.cpp b/src/plugins/qmldesigner/components/componentcore/viewmanager.cpp index c2feedd3453..0788e0e1121 100644 --- a/src/plugins/qmldesigner/components/componentcore/viewmanager.cpp +++ b/src/plugins/qmldesigner/components/componentcore/viewmanager.cpp @@ -85,7 +85,7 @@ public: QmlModelState savedState; Internal::DebugView debugView; Sqlite::Database auxiliaryDataDatabase{ - Utils::PathString{Core::ICore::userResourcePath("auxiliary_data.db").toUrlishString()}, + Utils::PathString{Core::ICore::userResourcePath("auxiliary_data.db").path()}, Sqlite::JournalMode::Wal, Sqlite::LockingMode::Normal}; AuxiliaryPropertyStorageView auxiliaryDataKeyView; diff --git a/src/plugins/qmldesigner/libs/designercore/include/auxiliarydata.h b/src/plugins/qmldesigner/libs/designercore/include/auxiliarydata.h index e5d9403d2cb..b61ec68a50b 100644 --- a/src/plugins/qmldesigner/libs/designercore/include/auxiliarydata.h +++ b/src/plugins/qmldesigner/libs/designercore/include/auxiliarydata.h @@ -34,29 +34,13 @@ public: operator BasicAuxiliaryDataKey() const { return {type, name}; } + constexpr auto operator<=>(const BasicAuxiliaryDataKey &) const = default; + public: AuxiliaryDataType type = AuxiliaryDataType::None; NameType name; }; -template -bool operator<(const BasicAuxiliaryDataKey &first, const BasicAuxiliaryDataKey &second) -{ - return std::tie(first.type, first.name) < std::tie(second.type, second.name); -} - -template -bool operator==(const BasicAuxiliaryDataKey &first, const BasicAuxiliaryDataKey &second) -{ - return first.type == second.type && first.name == second.name; -} - -template -bool operator!=(const BasicAuxiliaryDataKey &first, const BasicAuxiliaryDataKey &second) -{ - return !(first == second); -} - using AuxiliaryDataKey = BasicAuxiliaryDataKey; using AuxiliaryDataKeyView = BasicAuxiliaryDataKey; using AuxiliaryData = std::pair;