and.cpp 1.0 KB

12345678910111213141516171819202122232425262728
  1. /*=============================================================================
  2. Copyright (c) 2016 Lee Clagett
  3. Copyright (c) 2018 Kohei Takahashi
  4. Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. ==============================================================================*/
  7. #include <boost/config.hpp>
  8. #ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES
  9. # error "does not meet requirements"
  10. #endif
  11. #include <boost/fusion/support/detail/and.hpp>
  12. #include <boost/mpl/bool.hpp>
  13. #include <boost/mpl/assert.hpp>
  14. using namespace boost;
  15. using namespace boost::fusion::detail;
  16. BOOST_MPL_ASSERT((and_<>));
  17. BOOST_MPL_ASSERT_NOT((and_<false_type>));
  18. BOOST_MPL_ASSERT((and_<true_type>));
  19. BOOST_MPL_ASSERT_NOT((and_<true_type, false_type>));
  20. BOOST_MPL_ASSERT((and_<true_type, true_type>));
  21. BOOST_MPL_ASSERT_NOT((and_<true_type, true_type, false_type>));
  22. BOOST_MPL_ASSERT((and_<true_type, true_type, true_type>));
  23. BOOST_MPL_ASSERT((and_<true_type, mpl::true_>));