// Boost.Geometry (aka GGL, Generic Geometry Library) // Unit Test // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands. // Copyright (c) 2008-2012 Bruno Lalande, Paris, France. // Copyright (c) 2009-2012 Mateusz Loskot, London, UK. // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands. // Use, modification and distribution is subject to the Boost Software License, // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #include #include #include #include #include #include #include template void check_variant_types(boost::variant) { BOOST_MPL_ASSERT(( boost::mpl::equal< typename boost::variant::types, ExpectedTypes > )); } template void test_variant_result() { check_variant_types(typename boost::geometry::compress_variant::type()); } template void test_single_type_result() { BOOST_MPL_ASSERT(( boost::is_same< typename boost::geometry::compress_variant::type, ExpectedType > )); } int test_main(int, char* []) { test_variant_result< boost::variant, boost::mpl::vector >(); test_variant_result< boost::variant, boost::mpl::vector >(); test_single_type_result< boost::variant, int >(); test_single_type_result< boost::variant, double >(); return 0; }