diff options
| author | Peter Keresztes Schmidt <carbenium@outlook.com> | 2020-08-17 00:15:53 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-02-02 20:32:24 +0100 |
| commit | 477618bd1f630798e6046f349f9dc79870723eed (patch) | |
| tree | 1c6ca71ad03d010e97bcca269c076feb46b1589f /src | |
| parent | ed6c5c922bd9797fee4747fa7420d26853e40cd7 (diff) | |
Core/ChatCommands: Add support for std::array-type arguments (#25261)
(cherry picked from commit 30a825e2ac4d903329e3285e36b032c5533132d4)
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Chat/ChatCommands/ChatCommand.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/server/game/Chat/ChatCommands/ChatCommand.h b/src/server/game/Chat/ChatCommands/ChatCommand.h index 840915b4d2f..c54f7f52cb5 100644 --- a/src/server/game/Chat/ChatCommands/ChatCommand.h +++ b/src/server/game/Chat/ChatCommands/ChatCommand.h @@ -86,6 +86,23 @@ struct CommandArgsConsumerSingle<std::vector<T>> } }; +template <typename T, std::size_t C> +struct CommandArgsConsumerSingle<std::array<T, C>> +{ + static char const* TryConsumeTo(std::array<T, C>& val, char const* args) + { + for (T& t : val) + { + args = CommandArgsConsumerSingle<T>::TryConsumeTo(t, args); + + if (!args) + return nullptr; + } + + return args; + } +}; + template <> struct CommandArgsConsumerSingle<CommandArgs*> { |
