From 5352361e0c24334acc3f27473062b9f5514176d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sat, 26 Feb 2022 20:25:10 +0100 Subject: [PATCH] Trade: hide the deprecated OptionalButAlsoPointer helper. Not useful to have it directly in the Trade namespace. --- src/Magnum/Trade/AbstractImporter.cpp | 6 +++--- src/Magnum/Trade/AbstractImporter.h | 26 ++++++++++++++------------ 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/Magnum/Trade/AbstractImporter.cpp b/src/Magnum/Trade/AbstractImporter.cpp index 65e669390..66b31756c 100644 --- a/src/Magnum/Trade/AbstractImporter.cpp +++ b/src/Magnum/Trade/AbstractImporter.cpp @@ -1232,7 +1232,7 @@ std::string AbstractImporter::doMaterialName(UnsignedInt) { return {}; } #if !defined(MAGNUM_BUILD_DEPRECATED) || defined(DOXYGEN_GENERATING_OUTPUT) Containers::Optional #else -OptionalButAlsoPointer +Implementation::OptionalButAlsoPointer #endif AbstractImporter::material(const UnsignedInt id) { CORRADE_ASSERT(isOpened(), "Trade::AbstractImporter::material(): no file opened", {}); @@ -1246,7 +1246,7 @@ AbstractImporter::material(const UnsignedInt id) { /* GCC 4.8 and clang-cl needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED - return OptionalButAlsoPointer{std::move(material)}; + return Implementation::OptionalButAlsoPointer{std::move(material)}; #else return material; #endif @@ -1259,7 +1259,7 @@ Containers::Optional AbstractImporter::doMaterial(UnsignedInt) { #if !defined(MAGNUM_BUILD_DEPRECATED) || defined(DOXYGEN_GENERATING_OUTPUT) Containers::Optional #else -OptionalButAlsoPointer +Implementation::OptionalButAlsoPointer #endif AbstractImporter::material(const std::string& name) { CORRADE_ASSERT(isOpened(), "Trade::AbstractImporter::material(): no file opened", {}); diff --git a/src/Magnum/Trade/AbstractImporter.h b/src/Magnum/Trade/AbstractImporter.h index f84002c0c..853374c09 100644 --- a/src/Magnum/Trade/AbstractImporter.h +++ b/src/Magnum/Trade/AbstractImporter.h @@ -138,16 +138,18 @@ MAGNUM_TRADE_EXPORT Debug& operator<<(Debug& debug, ImporterFlag value); */ MAGNUM_TRADE_EXPORT Debug& operator<<(Debug& debug, ImporterFlags value); -#if defined(MAGNUM_BUILD_DEPRECATED) && !defined(DOXYGEN_GENERATING_OUTPUT) -/* Could be a concrete type as only MaterialData need this, but that would - mean I'd need to include MaterialData here */ -template struct OptionalButAlsoPointer: Containers::Optional { - /*implicit*/ OptionalButAlsoPointer() = default; - /*implicit*/ OptionalButAlsoPointer(Containers::Optional&& optional): Containers::Optional{std::move(optional)} {} - CORRADE_DEPRECATED("use Containers::Optional instead of Containers::Pointer for a MaterialData") /*implicit*/ operator Containers::Pointer() && { - return Containers::Pointer{new T{std::move(**this)}}; - } -}; +#ifdef MAGNUM_BUILD_DEPRECATED +namespace Implementation { + /* Could be a concrete type as only MaterialData need this, but that would + mean I'd need to include MaterialData here */ + template struct OptionalButAlsoPointer: Containers::Optional { + /*implicit*/ OptionalButAlsoPointer() = default; + /*implicit*/ OptionalButAlsoPointer(Containers::Optional&& optional): Containers::Optional{std::move(optional)} {} + CORRADE_DEPRECATED("use Containers::Optional instead of Containers::Pointer for a MaterialData") /*implicit*/ operator Containers::Pointer() && { + return Containers::Pointer{new T{std::move(**this)}}; + } + }; +} #endif /** @@ -1417,7 +1419,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi #if !defined(MAGNUM_BUILD_DEPRECATED) || defined(DOXYGEN_GENERATING_OUTPUT) Containers::Optional #else - OptionalButAlsoPointer + Implementation::OptionalButAlsoPointer #endif material(UnsignedInt id); @@ -1434,7 +1436,7 @@ class MAGNUM_TRADE_EXPORT AbstractImporter: public PluginManager::AbstractManagi #if !defined(MAGNUM_BUILD_DEPRECATED) || defined(DOXYGEN_GENERATING_OUTPUT) Containers::Optional #else - OptionalButAlsoPointer + Implementation::OptionalButAlsoPointer #endif material(const std::string& name);