C++ Template Metaprogramming
Solutions to the exercises throughout the book
Loading...
Searching...
No Matches

Test application for Chapter 4. More...

#include "exercise-4-0.hpp"
#include "exercise-4-1.hpp"
#include "exercise-4-2.hpp"
#include "exercise-4-3.hpp"
#include "exercise-4-4.hpp"
#include "exercise-4-5.hpp"
#include <stdio.h>
#include <vector>

Go to the source code of this file.

Classes

class  test_4_4::test_class
 

Namespaces

namespace  test_4_1
 Tests functionality from Exercise 4-1.
 
namespace  test_4_2
 Tests functionality from Exercise 4-2.
 
namespace  test_4_3
 Tests functionality from Exercise 4-3.
 
namespace  test_4_4
 Tests functionality from Exercise 4-4.
 
namespace  anonymous_namespace{chapter-4.cpp}
 

Typedefs

typedef next_if< mpl::int_< 1 >, mpl::greater< mpl::int_< 0 >, _1 > > test_4_3::shouldBe1
 
typedef next_if< mpl::int_< 1 >, mpl::greater< mpl::int_< 3 >, _1 > > test_4_3::shouldBe2
 
typedef formula< mpl::int_< 2 >, mpl::int_< 2 > > test_4_3::shouldBe6
 
typedef formula< mpl::int_< 3 >, mpl::int_< 4 > > test_4_3::shouldBe3
 
typedef formula< mpl::int_< 9 >, mpl::int_< 2 > > test_4_3::shouldBe7
 

Functions

 test_4_1::BOOST_STATIC_ASSERT ((logical_or< undefined_false< true >, undefined_false< false > >::value))
 
 test_4_1::BOOST_STATIC_ASSERT ((logical_or< boost::mpl::false_, boost::mpl::true_ >::value))
 
 test_4_1::BOOST_STATIC_ASSERT ((!logical_or< boost::mpl::false_, boost::mpl::false_ >::value))
 
 test_4_1::BOOST_STATIC_ASSERT ((!logical_and< undefined_true< false >, undefined_true< true > >::value))
 
 test_4_1::BOOST_STATIC_ASSERT ((!logical_and< boost::mpl::true_, boost::mpl::false_ >::value))
 
 test_4_1::BOOST_STATIC_ASSERT ((logical_and< boost::mpl::true_, boost::mpl::true_ >::value))
 
 test_4_2::BOOST_STATIC_ASSERT ((logical_or5< undefined_false< true >, undefined_false< false > >::value))
 
 test_4_2::BOOST_STATIC_ASSERT ((logical_or5< boost::mpl::false_, boost::mpl::true_ >::value))
 
 test_4_2::BOOST_STATIC_ASSERT ((!logical_or5< boost::mpl::false_, boost::mpl::false_ >::value))
 
 test_4_2::BOOST_STATIC_ASSERT ((!logical_or5< boost::mpl::false_, boost::mpl::false_, boost::mpl::false_, boost::mpl::false_, boost::mpl::false_ >::value))
 
 test_4_2::BOOST_STATIC_ASSERT ((logical_or5< boost::mpl::false_, boost::mpl::false_, boost::mpl::false_, boost::mpl::false_, boost::mpl::true_ >::value))
 
 test_4_2::BOOST_STATIC_ASSERT ((logical_or5< undefined_false< true >, undefined_false< true >, undefined_false< true >, undefined_false< true >, undefined_false< false > >::value))
 
 test_4_3::BOOST_STATIC_ASSERT ((shouldBe1::value==1))
 
 test_4_3::BOOST_STATIC_ASSERT ((shouldBe2::value==2))
 
 test_4_3::BOOST_STATIC_ASSERT ((shouldBe6::value==6))
 
 test_4_3::BOOST_STATIC_ASSERT ((shouldBe3::value==3))
 
 test_4_3::BOOST_STATIC_ASSERT ((shouldBe7::value==7))
 
 test_4_4::BOOST_STATIC_ASSERT ((is_data_member_pointer< int *(test_class::*)>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_data_member_pointer< int * >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< void()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< void(*[])()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((is_pointer_to_function< void(*)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< int * >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< int(*&)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< int >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< void(test_class::*)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((is_reference_to_function_pointer< void(*&)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_function_pointer< void(*)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_function_pointer< void(&)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_function_pointer< void()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_function_pointer< int & >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_function_pointer< int * >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_pointer_to_function< void(test_class::*&)()>::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_non_const< int const >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((!is_reference_to_non_const< int const & >::value))
 
 test_4_4::BOOST_STATIC_ASSERT ((is_reference_to_non_const< int & >::value))
 
static void anonymous_namespace{chapter-4.cpp}::test_exercise_4_5 ()
 Tests for Exercise 4-5.
 
int main ()
 

Detailed Description

Test application for Chapter 4.

Author
Matt Bisson

Definition in file chapter-4.cpp.

Function Documentation

◆ main()

int main ( )

Definition at line 183 of file chapter-4.cpp.