diff options
author | Treeston <treeston.mmoc@gmail.com> | 2020-03-19 17:01:35 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2021-12-24 00:34:10 +0100 |
commit | 632609b897c7268bd18997633019dde98dd2e6d6 (patch) | |
tree | 640238c4ec4c123b461b352d7d046cdd8e923be3 /src | |
parent | fdcef115e00c3fc4242d8e6372a5bf349bc06c43 (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.h | 17 |
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; } |