#include "variant.hpp" #include #include using namespace mapbox; struct check : util::static_visitor<> { template void operator() (T const& val) const { if (val != 0) throw std::runtime_error("invalid"); } }; int main() { typedef util::variant variant_type; variant_type v(0); util::apply_visitor(check(), v); return 0; }