aboutsummaryrefslogtreecommitdiff
path: root/core/src/Utils/Variant.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/Utils/Variant.hpp')
-rw-r--r--core/src/Utils/Variant.hpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/core/src/Utils/Variant.hpp b/core/src/Utils/Variant.hpp
index 7fdb2dc..df2f882 100644
--- a/core/src/Utils/Variant.hpp
+++ b/core/src/Utils/Variant.hpp
@@ -4,16 +4,21 @@
#include <variant>
template <class... Ts>
-struct Overloaded : Ts... { using Ts::operator()...; };
+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);
@@ -22,6 +27,7 @@ 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) };
}