• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 
2 //  (C) Copyright Edward Diener 2011
3 //  Use, modification and distribution are subject to the Boost Software License,
4 //  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
5 //  http://www.boost.org/LICENSE_1_0.txt).
6 
7 #include "test_vm_has_template_cp.hpp"
8 #include <boost/mpl/assert.hpp>
9 
main()10 int main()
11   {
12 
13 #if BOOST_PP_VARIADICS
14 
15   // You can always instantiate without compiler errors
16 
17   BOOST_TTI_HAS_TEMPLATE_GEN(TemplateNotExist)<AnotherType> aVar1;
18 
19   // Compile time asserts
20 
21   BOOST_MPL_ASSERT((BOOST_TTI_HAS_TEMPLATE_GEN(ATPMemberTemplate)<AType>));
22   BOOST_MPL_ASSERT((BOOST_TTI_HAS_TEMPLATE_GEN(AMemberTemplate)<AType>));
23   BOOST_MPL_ASSERT((BOOST_TTI_HAS_TEMPLATE_GEN(SomeMemberTemplate)<AnotherType>));
24   BOOST_MPL_ASSERT((BOOST_TTI_HAS_TEMPLATE_GEN(SimpleTMP)<AnotherType>));
25 
26   BOOST_MPL_ASSERT((HaveCL<AType>));
27   BOOST_MPL_ASSERT((HaveAnotherMT<AType>));
28   BOOST_MPL_ASSERT((ATemplateWithParms<AnotherType>));
29 
30 #endif // BOOST_PP_VARIADICS
31 
32   return 0;
33 
34   }
35