// (C) Copyright Edward Diener 2011 // Use, modification and distribution are 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 "test_has_type.hpp" #include #include #include using namespace boost::mpl::placeholders; int main() { // You can always instantiate without compiler errors TheInteger > aVar; BOOST_TTI_HAS_TYPE_GEN(NoOtherType) > aVar2; // Compile time asserts BOOST_MPL_ASSERT((BOOST_TTI_HAS_TYPE_GEN(AnIntType) >)); BOOST_MPL_ASSERT((NameStruct >)); BOOST_MPL_ASSERT((BOOST_TTI_HAS_TYPE_GEN(AnIntTypeReference) >)); BOOST_MPL_ASSERT((BOOST_TTI_HAS_TYPE_GEN(BType) >)); BOOST_MPL_ASSERT((TheInteger >)); BOOST_MPL_ASSERT((BOOST_TTI_HAS_TYPE_GEN(CType) >)); BOOST_MPL_ASSERT((BOOST_TTI_HAS_TYPE_GEN(AnotherIntegerType) >)); BOOST_MPL_ASSERT((SomethingElse >)); return 0; }