diff --git a/contrib/enumutils_describe.py b/contrib/enumutils_describe.py index 443b8ba430..d6923b87dc 100644 --- a/contrib/enumutils_describe.py +++ b/contrib/enumutils_describe.py @@ -108,7 +108,7 @@ def processFile(path, filename): output.write('#include "SmartEnum.h"\n') output.write('#include \n') output.write('\n') - output.write('namespace Trinity::Impl\n') + output.write('namespace Trinity::Impl::EnumUtilsImpl\n') output.write('{\n') for name, values in enums: tag = ('data for enum \'%s\' in \'%s.h\' auto-generated' % (name, filename)) diff --git a/src/common/Utilities/SmartEnum.h b/src/common/Utilities/SmartEnum.h index 8c9a873dd9..24e3c60bd3 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 + struct EnumUtils { - template - 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 - static size_t Count() { return Trinity::Impl::EnumUtils::Count(); } + static size_t Count() { return Trinity::Impl::EnumUtilsImpl::EnumUtils::Count(); } template - static EnumText ToString(Enum value) { return Trinity::Impl::EnumUtils::ToString(value); } + static EnumText ToString(Enum value) { return Trinity::Impl::EnumUtilsImpl::EnumUtils::ToString(value); } template - static Enum FromIndex(size_t index) { return Trinity::Impl::EnumUtils::FromIndex(index); } + static Enum FromIndex(size_t index) { return Trinity::Impl::EnumUtilsImpl::EnumUtils::FromIndex(index); } template - static uint32 ToIndex(Enum value) { return Trinity::Impl::EnumUtils::ToIndex(value);} + static uint32 ToIndex(Enum value) { return Trinity::Impl::EnumUtilsImpl::EnumUtils::ToIndex(value);} template static bool IsValid(Enum value) { try { - Trinity::Impl::EnumUtils::ToIndex(value); + Trinity::Impl::EnumUtilsImpl::EnumUtils::ToIndex(value); return true; } catch (...) { diff --git a/src/server/game/AuctionHouseBot/enuminfo_AuctionHouseBot.cpp b/src/server/game/AuctionHouseBot/enuminfo_AuctionHouseBot.cpp index 2d784a9442..56e664b154 100644 --- a/src/server/game/AuctionHouseBot/enuminfo_AuctionHouseBot.cpp +++ b/src/server/game/AuctionHouseBot/enuminfo_AuctionHouseBot.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /************************************************************************\ diff --git a/src/server/game/Entities/Creature/enuminfo_CreatureData.cpp b/src/server/game/Entities/Creature/enuminfo_CreatureData.cpp index 01549c93c4..b7e8c77c91 100644 --- a/src/server/game/Entities/Creature/enuminfo_CreatureData.cpp +++ b/src/server/game/Entities/Creature/enuminfo_CreatureData.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /*************************************************************************\ diff --git a/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp b/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp index 5452ca1048..c97bcb3ff0 100644 --- a/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp +++ b/src/server/game/Entities/Unit/enuminfo_UnitDefines.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /***************************************************************\ diff --git a/src/server/game/Instances/enuminfo_InstanceScript.cpp b/src/server/game/Instances/enuminfo_InstanceScript.cpp index 7fcbc5d303..b48195aae4 100644 --- a/src/server/game/Instances/enuminfo_InstanceScript.cpp +++ b/src/server/game/Instances/enuminfo_InstanceScript.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /***********************************************************************\ diff --git a/src/server/game/Maps/enuminfo_SpawnData.cpp b/src/server/game/Maps/enuminfo_SpawnData.cpp index 82b75acb14..9256a1c742 100644 --- a/src/server/game/Maps/enuminfo_SpawnData.cpp +++ b/src/server/game/Maps/enuminfo_SpawnData.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /*******************************************************************\ diff --git a/src/server/game/Warden/enuminfo_WardenCheckMgr.cpp b/src/server/game/Warden/enuminfo_WardenCheckMgr.cpp index 7a0eadda43..1d19d4e87b 100644 --- a/src/server/game/Warden/enuminfo_WardenCheckMgr.cpp +++ b/src/server/game/Warden/enuminfo_WardenCheckMgr.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /**********************************************************************\ diff --git a/src/server/shared/enuminfo_SharedDefines.cpp b/src/server/shared/enuminfo_SharedDefines.cpp index ab2c52370d..dd8e364131 100644 --- a/src/server/shared/enuminfo_SharedDefines.cpp +++ b/src/server/shared/enuminfo_SharedDefines.cpp @@ -20,7 +20,7 @@ #include "SmartEnum.h" #include -namespace Trinity::Impl +namespace Trinity::Impl::EnumUtilsImpl { /*************************************************************\