diff options
Diffstat (limited to 'app/source/Cplt/Utils/Variant.hpp')
-rw-r--r-- | app/source/Cplt/Utils/Variant.hpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/app/source/Cplt/Utils/Variant.hpp b/app/source/Cplt/Utils/Variant.hpp index df2f882..b601811 100644 --- a/app/source/Cplt/Utils/Variant.hpp +++ b/app/source/Cplt/Utils/Variant.hpp @@ -4,21 +4,18 @@ #include <variant> template <class... Ts> -struct Overloaded : Ts... -{ +struct Overloaded : Ts... { using Ts::operator()...; }; template <class... Ts> Overloaded(Ts...) -> Overloaded<Ts...>; template <class... Args> -struct VariantCastProxy -{ +struct VariantCastProxy { std::variant<Args...> v; template <class... ToArgs> - operator std::variant<ToArgs...>() const - { + operator std::variant<ToArgs...>() const { return std::visit( [](auto&& arg) -> std::variant<ToArgs...> { return arg; }, v); @@ -27,7 +24,6 @@ struct VariantCastProxy /// Use snake_case naming to align with `static_cast`, `dynamic_cast`, etc.. template <class... Args> -auto variant_cast(std::variant<Args...> v) -> VariantCastProxy<Args...> -{ +auto variant_cast(std::variant<Args...> v) -> VariantCastProxy<Args...> { return { std::move(v) }; } |