aboutsummaryrefslogtreecommitdiff
path: root/src/common/Utilities/SmartEnum.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/Utilities/SmartEnum.h')
-rw-r--r--src/common/Utilities/SmartEnum.h29
1 files changed, 13 insertions, 16 deletions
diff --git a/src/common/Utilities/SmartEnum.h b/src/common/Utilities/SmartEnum.h
index 8c9a873dd9c..24e3c60bd30 100644
--- a/src/common/Utilities/SmartEnum.h
+++ b/src/common/Utilities/SmartEnum.h
@@ -32,39 +32,36 @@ struct EnumText
char const* const Description;
};
-namespace Trinity
+namespace Trinity::Impl::EnumUtilsImpl
{
- namespace Impl
+ template <typename Enum>
+ struct EnumUtils
{
- template <typename Enum>
- struct EnumUtils
- {
- static size_t Count();
- static EnumText ToString(Enum value);
- static Enum FromIndex(size_t index);
- static size_t ToIndex(Enum index);
- };
- }
+ static size_t Count();
+ static EnumText ToString(Enum value);
+ static Enum FromIndex(size_t index);
+ static size_t ToIndex(Enum index);
+ };
}
class EnumUtils
{
public:
template <typename Enum>
- static size_t Count() { return Trinity::Impl::EnumUtils<Enum>::Count(); }
+ static size_t Count() { return Trinity::Impl::EnumUtilsImpl::EnumUtils<Enum>::Count(); }
template <typename Enum>
- static EnumText ToString(Enum value) { return Trinity::Impl::EnumUtils<Enum>::ToString(value); }
+ static EnumText ToString(Enum value) { return Trinity::Impl::EnumUtilsImpl::EnumUtils<Enum>::ToString(value); }
template <typename Enum>
- static Enum FromIndex(size_t index) { return Trinity::Impl::EnumUtils<Enum>::FromIndex(index); }
+ static Enum FromIndex(size_t index) { return Trinity::Impl::EnumUtilsImpl::EnumUtils<Enum>::FromIndex(index); }
template <typename Enum>
- static uint32 ToIndex(Enum value) { return Trinity::Impl::EnumUtils<Enum>::ToIndex(value);}
+ static uint32 ToIndex(Enum value) { return Trinity::Impl::EnumUtilsImpl::EnumUtils<Enum>::ToIndex(value);}
template<typename Enum>
static bool IsValid(Enum value)
{
try
{
- Trinity::Impl::EnumUtils<Enum>::ToIndex(value);
+ Trinity::Impl::EnumUtilsImpl::EnumUtils<Enum>::ToIndex(value);
return true;
} catch (...)
{