#pragma once #ifdef _MSC_VER #pragma warning(push) #pragma warning(disable : 4244) #endif #include #ifdef _MSC_VER #pragma warning(pop) #endif namespace mln { template using variant = mapbox::util::variant; // https://en.cppreference.com/w/cpp/utility/variant/visit template struct overloaded : Ts... { using Ts::operator()...; }; // explicit deduction guide (not needed as of C++20) template overloaded(Ts...) -> overloaded; } // namespace mln