diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Chat/ChatCommands/ChatCommandTags.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/game/Chat/ChatCommands/ChatCommandTags.h b/src/server/game/Chat/ChatCommands/ChatCommandTags.h index 51171d29b2c..213a80c507e 100644 --- a/src/server/game/Chat/ChatCommands/ChatCommandTags.h +++ b/src/server/game/Chat/ChatCommands/ChatCommandTags.h @@ -156,11 +156,17 @@ namespace Trinity::ChatCommands Variant& operator=(T&& arg) { base::operator=(std::forward<T>(arg)); return *this; } template <size_t index> - constexpr decltype(auto) get() { return std::get<index>(static_cast<base const&>(*this)); } + constexpr decltype(auto) get() { return std::get<index>(static_cast<base&>(*this)); } template <size_t index> constexpr decltype(auto) get() const { return std::get<index>(static_cast<base const&>(*this)); } + template <typename type> + constexpr decltype(auto) get() { return std::get<type>(static_cast<base&>(*this)); } + template <typename type> + constexpr decltype(auto) get() const { return std::get<type>(static_cast<base const&>(*this)); } template <typename T> + constexpr decltype(auto) visit(T&& arg) { return std::visit(std::forward<T>(arg), static_cast<base&>(*this)); } + template <typename T> constexpr decltype(auto) visit(T&& arg) const { return std::visit(std::forward<T>(arg), static_cast<base const&>(*this)); } template <typename T> |