C++ Template Metaprogramming
Solutions to the exercises throughout the book
Loading...
Searching...
No Matches
Class Index
A
|
B
|
C
|
D
|
E
|
F
|
I
|
L
|
M
|
N
|
P
|
Q
|
R
|
S
|
T
|
U
|
Z
A
add_const_ref
(
exercise_2_0::no_boost
)
add_const_ref
(
exercise_2_0::with_boost
)
add_const_ref
(
exercise_2_0
)
add_const_ref< T & >
(
exercise_2_0::no_boost
)
add_const_ref< T const >
(
exercise_2_0::no_boost
)
add_const_ref_impl
(
exercise_2_0::no_boost
)
add_const_ref_impl< T, true >
(
exercise_2_0::no_boost
)
advance< chapter5::tiny_iterator< Tiny, Pos >, N >
(
boost::mpl
)
advance< chapter7::zip_iterator< IteratorSeq, random_access_iterator_tag >, N >
(
boost::mpl
)
end_impl< exercise_5_7::dimensions_b_tag >::apply
(
boost::mpl
)
pop_front_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
end_impl< exercise_6_1::binary_tag >::apply
(
boost::mpl
)
erase_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
insert_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
pop_back_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
pop_back_impl< exercise_5_7::dimensions_b_tag >::apply
(
boost::mpl
)
push_back_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
push_back_impl< chapter5::tree_tag >::apply
(
boost::mpl
)
push_back_impl< exercise_5_7::dimensions_b_tag >::apply
(
boost::mpl
)
push_front_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
size_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
ex_3_1apply::apply
(
exercise_3_1
)
twice_lambda::apply
(
exercise_3_6
)
begin_impl< exercise_5_6::dimensions_tag >::apply
(
boost::mpl
)
end_impl< exercise_5_6::dimensions_tag >::apply
(
boost::mpl
)
at_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
at_impl< chapter7::zip_view_tag >::apply
(
boost::mpl
)
begin_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
begin_impl< chapter7::permutation_view_tag >::apply
(
boost::mpl
)
begin_impl< exercise_5_10::inorder_view_tag >::apply
(
boost::mpl
)
begin_impl< exercise_5_7::dimensions_b_tag >::apply
(
boost::mpl
)
begin_impl< exercise_5_8::fibonacci_series_tag >::apply
(
boost::mpl
)
begin_impl< exercise_6_1::binary_tag >::apply
(
boost::mpl
)
clear_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
end_impl< chapter5::tiny_tag >::apply
(
boost::mpl
)
end_impl< chapter5::tree_tag >::apply
(
boost::mpl
)
end_impl< chapter7::permutation_view_tag >::apply
(
boost::mpl
)
end_impl< exercise_5_10::inorder_view_tag >::apply
(
boost::mpl
)
push_back_impl< chapter5::tree_tag >::apply< chapter5::tree< Cur, L, R >, New >
(
boost::mpl
)
push_back_impl< chapter5::tree_tag >::apply< chapter5::tree<>, New >
(
boost::mpl
)
begin_impl< chapter7::permutation_view_tag >::apply< chapter7::permutation_view< Indices, Sequence > >
(
boost::mpl
)
at_impl< chapter7::zip_view_tag >::apply< chapter7::zip_view< S >, N >
(
boost::mpl
)
pop_back_impl< exercise_5_7::dimensions_b_tag >::apply< exercise_5_7::dimensions_b< T[N]> >
(
boost::mpl
)
begin_impl< exercise_6_1::binary_tag >::apply< exercise_6_1::binary< N > >
(
boost::mpl
)
end_impl< exercise_6_1::binary_tag >::apply< exercise_6_1::binary< N > >
(
boost::mpl
)
erase_impl< chapter5::tiny_tag >::apply< S, chapter5::tiny_iterator< S, First >, chapter5::tiny_iterator< S, Last > >
(
boost::mpl
)
erase_impl< chapter5::tiny_tag >::apply< S, First, mpl_::na >
(
boost::mpl
)
insert_impl< chapter5::tiny_tag >::apply< Tiny, chapter5::tiny_iterator< Tiny, Pos >, T >
(
boost::mpl
)
push_back_impl< chapter5::tree_tag >::apply< void_, New >
(
boost::mpl
)
binary::apply_binary_digit
(
exercise_6_1
)
binary::apply_binary_digit< T1, binary< N2 > >
(
exercise_6_1
)
at_impl< chapter7::zip_view_tag >::apply_impl
(
boost::mpl
)
at_impl< chapter7::zip_view_tag >::apply_impl< S, random_access_iterator_tag, N >
(
boost::mpl
)
push_back_impl< exercise_5_7::dimensions_b_tag >::apply_num
(
boost::mpl
)
push_back_impl< exercise_5_7::dimensions_b_tag >::apply_num< exercise_5_7::dimensions_b< T >, N >
(
boost::mpl
)
begin_impl< exercise_5_10::inorder_view_tag >::apply_on_iterator
(
boost::mpl
)
begin_impl< exercise_5_10::inorder_view_tag >::apply_on_iterator< chapter5::tree< Cur, L, R >, Parent >
(
boost::mpl
)
begin_impl< exercise_5_10::inorder_view_tag >::apply_on_iterator< chapter5::tree<>, Parent >
(
boost::mpl
)
at_impl< chapter5::tiny_tag >
(
boost::mpl
)
at_impl< chapter7::zip_view_tag >
(
boost::mpl
)
B
begin_impl< chapter5::tiny_tag >
(
boost::mpl
)
begin_impl< chapter7::permutation_view_tag >
(
boost::mpl
)
begin_impl< exercise_5_10::inorder_view_tag >
(
boost::mpl
)
begin_impl< exercise_5_6::dimensions_tag >
(
boost::mpl
)
begin_impl< exercise_5_7::dimensions_b_tag >
(
boost::mpl
)
begin_impl< exercise_5_8::fibonacci_series_tag >
(
boost::mpl
)
begin_impl< exercise_6_1::binary_tag >
(
boost::mpl
)
begin_impl_traversal
(
exercise_5_7
)
begin_impl_traversal< S, boost::mpl::void_ >
(
exercise_5_7
)
binary
(
chapter1
)
binary
(
exercise_6_1
)
binary< 0 >
(
chapter1
)
binary_tag
(
exercise_6_1
)
binary_tree_inserter
(
exercise_6_3
)
binary_tree_search
(
exercise_6_4
)
binary_tree_search< boost::mpl::void_, Elem >
(
exercise_6_4
)
binary_tree_search< chapter5::tree< Cur, L, R >, Elem >
(
exercise_6_4
)
C
checked_binary
(
exercise_3_0
)
checked_binary< 0 >
(
exercise_3_0
)
clear_impl< chapter5::tiny_tag >
(
boost::mpl
)
D
deref< chapter5::tiny_iterator< Tiny, Pos > >
(
boost::mpl
)
deref< chapter7::permutation_iterator< CurIdxIter, SeqBegin > >
(
boost::mpl
)
deref< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, R >, Parent, VisitCount > >
(
boost::mpl
)
deref< exercise_5_10::inorder_view_iterator< Cur, Parent, VisitCount > >
(
boost::mpl
)
deref< exercise_5_6::dimensions_iterator< S > >
(
boost::mpl
)
deref< exercise_5_7::dimensions_b_iterator< S > >
(
boost::mpl
)
deref< exercise_5_8::fibonacci_series_iterator< N, LastN > >
(
boost::mpl
)
deref< exercise_6_1::binary< N > >
(
boost::mpl
)
deref< exercise_7_7::reverse_iterator< ForwardIt > >
(
boost::mpl
)
dimensions
(
exercise_5_6
)
dimensions< T[N]>
(
exercise_5_6
)
dimensions_b
(
exercise_5_7
)
dimensions_b_impl
(
exercise_5_7
)
dimensions_b_impl< T[N], Next >
(
exercise_5_7
)
dimensions_b_iterator
(
exercise_5_7
)
dimensions_b_tag
(
exercise_5_7
)
dimensions_iterator
(
exercise_5_6
)
dimensions_tag
(
exercise_5_6
)
distance< chapter5::tiny_iterator< Tiny, Pos1 >, chapter5::tiny_iterator< Tiny, Pos2 > >
(
boost::mpl
)
divide_dimensions
(
exercise_3_5::section_3_1
)
double_first_half
(
exercise_5_1
)
double_first_half_impl
(
exercise_5_1
)
E
end_impl< chapter5::tiny_tag >
(
boost::mpl
)
end_impl< chapter5::tree_tag >
(
boost::mpl
)
end_impl< chapter7::permutation_view_tag >
(
boost::mpl
)
end_impl< exercise_5_10::inorder_view_tag >
(
boost::mpl
)
end_impl< exercise_5_6::dimensions_tag >
(
boost::mpl
)
end_impl< exercise_5_7::dimensions_b_tag >
(
boost::mpl
)
end_impl< exercise_6_1::binary_tag >
(
boost::mpl
)
erase_impl< chapter5::tiny_tag >
(
boost::mpl
)
ex_3_1
(
exercise_3_1
)
ex_3_1apply
(
exercise_3_1
)
ex_3_1b
(
exercise_3_1
)
ex_3_2
(
exercise_3_2
)
extract_iterator_category
(
chapter7
)
F
fibonacci_series
(
exercise_5_8
)
fibonacci_series_iterator
(
exercise_5_8
)
fibonacci_series_tag
(
exercise_5_8
)
find_smaller
(
exercise_6_0
)
find_smaller< no_type, T2 >
(
exercise_6_0
)
formula
(
exercise_4_3
)
I
inorder_view
(
exercise_5_10
)
inorder_view_iterator
(
exercise_5_10
)
inorder_view_tag
(
exercise_5_10
)
insert_impl< chapter5::tiny_tag >
(
boost::mpl
)
is_data_member_pointer
(
exercise_4_4
)
is_pointer_to_function
(
exercise_4_4
)
is_reference_to_function_pointer
(
exercise_4_4
)
is_reference_to_non_const
(
exercise_4_4
)
is_valid_reverse_category
(
exercise_7_7
)
L
least_refined_iterator_category
(
chapter7
)
logical_and
(
exercise_4_1
)
logical_and< boost::mpl::false_, E2 >
(
exercise_4_1
)
logical_and< boost::mpl::true_, E2 >
(
exercise_4_1
)
logical_or
(
exercise_4_1
)
logical_or5
(
exercise_4_2
)
logical_or5< boost::mpl::false_, boost::mpl::false_, boost::mpl::false_, boost::mpl::false_, E5 >
(
exercise_4_2
)
logical_or5< boost::mpl::false_, E2, E3, E4, E5 >
(
exercise_4_2
)
logical_or5< boost::mpl::true_, E2, E3, E4, E5 >
(
exercise_4_2
)
logical_or< boost::mpl::false_, E2 >
(
exercise_4_1
)
logical_or< boost::mpl::true_, E2 >
(
exercise_4_1
)
M
multiply_dimensions
(
exercise_3_5::section_3_1
)
N
next< chapter5::tiny_iterator< Tiny, Pos > >
(
boost::mpl
)
next< chapter7::permutation_iterator< CurIdxIter, SeqBegin > >
(
boost::mpl
)
next< chapter7::zip_iterator< IteratorSeq, Category > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, R >, Parent, 0 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, R >, Parent, 1 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, R >, Parent, 2 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, R >, Parent, 3 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, R >, Parent, VisitCount > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, L, void_ >, Parent, 2 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< chapter5::tree< Cur, void_, R >, Parent, 0 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< Cur, Parent, 0 > >
(
boost::mpl
)
next< exercise_5_10::inorder_view_iterator< Cur, Parent, VisitCount > >
(
boost::mpl
)
next< exercise_5_6::dimensions_iterator< S > >
(
boost::mpl
)
next< exercise_5_7::dimensions_b_iterator< S > >
(
boost::mpl
)
next< exercise_5_8::fibonacci_series_iterator< 1134903170, 701408733 > >
(
boost::mpl
)
next< exercise_5_8::fibonacci_series_iterator< N, LastN > >
(
boost::mpl
)
next< exercise_6_1::binary< N > >
(
boost::mpl
)
next< exercise_7_7::reverse_iterator< ForwardIt > >
(
boost::mpl
)
next_if
(
exercise_4_3
)
no_type
(
exercise_6_0
)
none
(
chapter5
)
P
permutation_iterator
(
chapter7
)
permutation_view
(
chapter7
)
permutation_view_tag
(
chapter7
)
pop_back_impl< chapter5::tiny_tag >
(
boost::mpl
)
pop_back_impl< exercise_5_7::dimensions_b_tag >
(
boost::mpl
)
pop_front_impl< chapter5::tiny_tag >
(
boost::mpl
)
prior< chapter5::tiny_iterator< Tiny, Pos > >
(
boost::mpl
)
prior< chapter7::permutation_iterator< CurIdxIter, SeqBegin > >
(
boost::mpl
)
prior< chapter7::zip_iterator< IteratorSeq, Category > >
(
boost::mpl
)
prior< exercise_5_7::dimensions_b_iterator< S > >
(
boost::mpl
)
prior< exercise_5_8::fibonacci_series_iterator< 0, 1 > >
(
boost::mpl
)
prior< exercise_5_8::fibonacci_series_iterator< 1, 1 > >
(
boost::mpl
)
prior< exercise_5_8::fibonacci_series_iterator< N, LastN > >
(
boost::mpl
)
prior< exercise_7_7::reverse_iterator< ForwardIt > >
(
boost::mpl
)
push_back_impl< chapter5::tiny_tag >
(
boost::mpl
)
push_back_impl< chapter5::tree_tag >
(
boost::mpl
)
push_back_impl< exercise_5_7::dimensions_b_tag >
(
boost::mpl
)
push_front_impl< chapter5::tiny_tag >
(
boost::mpl
)
Q
quantity
(
exercise_3_5::section_3_1
)
R
rbegin
(
boost::mpl
)
rend
(
boost::mpl
)
replace_type
(
exercise_2_1::cpp20
)
replace_type
(
exercise_2_1
)
replace_type< C &, X, Y >
(
exercise_2_1::cpp20
)
replace_type< C &, X, Y >
(
exercise_2_1
)
replace_type< C *, X, Y >
(
exercise_2_1::cpp20
)
replace_type< C *, X, Y >
(
exercise_2_1
)
replace_type< C[N], X, Y >
(
exercise_2_1::cpp20
)
replace_type< C[N], X, Y >
(
exercise_2_1
)
replace_type< Cr(*)(), X, Y >
(
exercise_2_1
)
replace_type< Cr(*)(C0), X, Y >
(
exercise_2_1
)
replace_type< Cr(*)(C0, C1), X, Y >
(
exercise_2_1
)
replace_type< Cr(*)(CArgs...), X, Y >
(
exercise_2_1::cpp20
)
replace_type< Cr(*)(CArgs...), X, Y >
(
exercise_2_1
)
replace_type_dispatch
(
exercise_2_1::cpp20
)
replace_type_dispatch
(
exercise_2_1
)
replace_type_dispatch< C, X, Y, false >
(
exercise_2_1::cpp20
)
replace_type_dispatch< C, X, Y, false >
(
exercise_2_1
)
replace_type_dispatch< C, X, Y, true >
(
exercise_2_1::cpp20
)
replace_type_dispatch< C, X, Y, true >
(
exercise_2_1
)
replace_with_smaller
(
exercise_6_0
)
reverse_iterator
(
exercise_7_7
)
rotate_view
(
exercise_7_3
)
S
size_impl< chapter5::tiny_tag >
(
boost::mpl
)
smallest
(
exercise_6_0
)
T
test_class
(
test_4_4
)
test_result
(
anonymous_namespace{chapter-1.cpp}
)
TestA
(
anonymous_namespace{chapter-2.cpp}
)
TestB
(
anonymous_namespace{chapter-2.cpp}
)
tiny
(
chapter5
)
tiny_at
(
chapter5
)
tiny_at< Tiny, 0 >
(
chapter5
)
tiny_at< Tiny, 1 >
(
chapter5
)
tiny_at< Tiny, 2 >
(
chapter5
)
tiny_erase
(
chapter5
)
tiny_erase< S, 0, 1 >
(
chapter5
)
tiny_erase< S, 0, 2 >
(
chapter5
)
tiny_erase< S, 0, 3 >
(
chapter5
)
tiny_erase< S, 1, 2 >
(
chapter5
)
tiny_erase< S, 1, 3 >
(
chapter5
)
tiny_erase< S, 2, 3 >
(
chapter5
)
tiny_insert
(
chapter5
)
tiny_insert< Tiny, T, 0 >
(
chapter5
)
tiny_insert< Tiny, T, 1 >
(
chapter5
)
tiny_insert< Tiny, T, 2 >
(
chapter5
)
tiny_iterator
(
chapter5
)
tiny_push_back
(
chapter5
)
tiny_push_back< Tiny, T, 0 >
(
chapter5
)
tiny_push_back< Tiny, T, 1 >
(
chapter5
)
tiny_push_back< Tiny, T, 2 >
(
chapter5
)
tiny_size
(
chapter5
)
tiny_size< none, none, none >
(
chapter5
)
tiny_size< T0, none, none >
(
chapter5
)
tiny_size< T0, T1, none >
(
chapter5
)
tiny_tag
(
chapter5
)
tree
(
chapter5
)
tree_end
(
exercise_6_4
)
tree_tag
(
chapter5
)
twice
(
chapter3
)
twice_lambda
(
exercise_3_6
)
type_descriptor
(
exercise_2_3
)
type_descriptor
(
exercise_2_4::cpp20
)
type_descriptor
(
exercise_2_4
)
type_descriptor_eng
(
exercise_2_5::cpp20
)
type_descriptor_eng
(
exercise_2_5
)
U
undefined_false
(
chapter4
)
undefined_false< true >
(
chapter4
)
undefined_true
(
chapter4
)
undefined_true< false >
(
chapter4
)
Z
zip_iterator
(
chapter7
)
zip_view
(
chapter7
)
zip_view_tag
(
chapter7
)
Generated on Fri Mar 8 2024 12:11:48 for C++ Template Metaprogramming by
1.9.6