aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTreeston <treeston.mmoc@gmail.com>2020-03-19 17:01:35 +0100
committerShauren <shauren.trinity@gmail.com>2021-12-24 00:34:10 +0100
commit632609b897c7268bd18997633019dde98dd2e6d6 (patch)
tree640238c4ec4c123b461b352d7d046cdd8e923be3 /src
parentfdcef115e00c3fc4242d8e6372a5bf349bc06c43 (diff)
Core/Misc: C++17 cleanups, commit 1
(cherry picked from commit ac9004a2f9fa7af7c7735168e7bc5c08d6cacca7)
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Chat/ChatCommands/ChatCommand.h17
1 files changed, 3 insertions, 14 deletions
diff --git a/src/server/game/Chat/ChatCommands/ChatCommand.h b/src/server/game/Chat/ChatCommands/ChatCommand.h
index 7f35f906776..de6c69cf2a6 100644
--- a/src/server/game/Chat/ChatCommands/ChatCommand.h
+++ b/src/server/game/Chat/ChatCommands/ChatCommand.h
@@ -45,20 +45,7 @@ struct CommandArgsConsumerSingle
struct CommandArgsVariantConsumer
{
- template <typename V, typename T1, typename T2, typename... Ts>
- static char const* TryConsumeTo(V& val, char const* args)
- {
- T1 v;
- if (char const* next = CommandArgsConsumerSingle<T1>::TryConsumeTo(v, args))
- {
- val = std::move(v);
- return next;
- }
- else
- return TryConsumeTo<V, T2, Ts...>(val, args);
- }
-
- template <typename V, typename T1>
+ template <typename V, typename T1, typename... Ts>
static char const* TryConsumeTo(V& val, char const* args)
{
T1 v;
@@ -67,6 +54,8 @@ struct CommandArgsVariantConsumer
val = std::move(v);
return next;
}
+ else if constexpr (sizeof...(Ts) > 0)
+ return TryConsumeTo<V, Ts...>(val, args);
else
return nullptr;
}