diff options
author | Treeston <treeston.mmoc@gmail.com> | 2020-08-23 15:04:23 +0200 |
---|---|---|
committer | Treeston <treeston.mmoc@gmail.com> | 2020-08-23 15:05:04 +0200 |
commit | 91744de3162bab23d7c5a0dd65fc8b4249eb803a (patch) | |
tree | d689da90ceb67946887c950493e36c0d6a37d3b0 /src/common/Utilities/SmartEnum.h | |
parent | 6d295629cf01cc23e9c6c521c767a4fa6fd0eb41 (diff) |
Common/Utilities: Move EnumUtils' implementation struct from Trinity::Impl to Trinity::Impl::EnumUtilsImpl. This avoids confusing name clashes for other implementations in sub-namespaces of Trinity::Impl.
Diffstat (limited to 'src/common/Utilities/SmartEnum.h')
-rw-r--r-- | src/common/Utilities/SmartEnum.h | 29 |
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 (...) { |