From 19fcec84d8d7d21e796c7624e521b60d28ee21ed Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 20:45:59 +0200 Subject: Adding upstream version 16.2.11+ds. Signed-off-by: Daniel Baumann --- src/boost/libs/fusion/test/Jamfile | 277 ++++++++++ src/boost/libs/fusion/test/algorithm/all.cpp | 70 +++ src/boost/libs/fusion/test/algorithm/any.cpp | 57 +++ src/boost/libs/fusion/test/algorithm/clear.cpp | 45 ++ src/boost/libs/fusion/test/algorithm/copy.cpp | 26 + src/boost/libs/fusion/test/algorithm/count.cpp | 41 ++ src/boost/libs/fusion/test/algorithm/count_if.cpp | 46 ++ src/boost/libs/fusion/test/algorithm/erase.cpp | 63 +++ src/boost/libs/fusion/test/algorithm/erase_key.cpp | 74 +++ src/boost/libs/fusion/test/algorithm/filter.cpp | 43 ++ src/boost/libs/fusion/test/algorithm/filter_if.cpp | 77 +++ src/boost/libs/fusion/test/algorithm/find.cpp | 79 +++ src/boost/libs/fusion/test/algorithm/find_if.cpp | 69 +++ src/boost/libs/fusion/test/algorithm/flatten.cpp | 57 +++ src/boost/libs/fusion/test/algorithm/fold.cpp | 257 ++++++++++ src/boost/libs/fusion/test/algorithm/fold.hpp | 212 ++++++++ src/boost/libs/fusion/test/algorithm/for_each.cpp | 83 +++ src/boost/libs/fusion/test/algorithm/insert.cpp | 67 +++ .../libs/fusion/test/algorithm/insert_range.cpp | 71 +++ src/boost/libs/fusion/test/algorithm/iter_fold.cpp | 10 + src/boost/libs/fusion/test/algorithm/join.cpp | 28 + src/boost/libs/fusion/test/algorithm/move.cpp | 27 + src/boost/libs/fusion/test/algorithm/none.cpp | 58 +++ src/boost/libs/fusion/test/algorithm/pop_back.cpp | 105 ++++ src/boost/libs/fusion/test/algorithm/pop_front.cpp | 46 ++ src/boost/libs/fusion/test/algorithm/push_back.cpp | 72 +++ .../libs/fusion/test/algorithm/push_front.cpp | 55 ++ src/boost/libs/fusion/test/algorithm/remove.cpp | 80 +++ src/boost/libs/fusion/test/algorithm/remove_if.cpp | 78 +++ src/boost/libs/fusion/test/algorithm/replace.cpp | 49 ++ .../libs/fusion/test/algorithm/replace_if.cpp | 52 ++ src/boost/libs/fusion/test/algorithm/reverse.cpp | 49 ++ .../libs/fusion/test/algorithm/reverse_fold.cpp | 10 + .../fusion/test/algorithm/reverse_iter_fold.cpp | 12 + .../libs/fusion/test/algorithm/segmented_find.cpp | 62 +++ .../fusion/test/algorithm/segmented_find_if.cpp | 65 +++ .../libs/fusion/test/algorithm/segmented_fold.cpp | 63 +++ .../fusion/test/algorithm/segmented_for_each.cpp | 140 +++++ .../libs/fusion/test/algorithm/ticket-5490.cpp | 41 ++ src/boost/libs/fusion/test/algorithm/transform.cpp | 157 ++++++ src/boost/libs/fusion/test/algorithm/zip.cpp | 30 ++ src/boost/libs/fusion/test/algorithm/zip2.cpp | 30 ++ .../libs/fusion/test/algorithm/zip_ignore.cpp | 28 + src/boost/libs/fusion/test/compile_time/Makefile | 29 ++ src/boost/libs/fusion/test/compile_time/driver.hpp | 75 +++ src/boost/libs/fusion/test/compile_time/fold.cpp | 42 ++ .../fusion/test/compile_time/sfinae_friendly.hpp | 53 ++ .../libs/fusion/test/compile_time/transform.cpp | 55 ++ .../test/compile_time/vector_construction.cpp | 28 + .../fusion/test/compile_time/vector_intrinsic.cpp | 59 +++ .../fusion/test/compile_time/vector_iteration.cpp | 38 ++ src/boost/libs/fusion/test/functional/fused.cpp | 97 ++++ .../test/functional/fused_function_object.cpp | 83 +++ .../fusion/test/functional/fused_procedure.cpp | 82 +++ src/boost/libs/fusion/test/functional/invoke.cpp | 562 +++++++++++++++++++++ .../test/functional/invoke_function_object.cpp | 265 ++++++++++ .../fusion/test/functional/invoke_procedure.cpp | 385 ++++++++++++++ .../libs/fusion/test/functional/make_fused.cpp | 85 ++++ .../test/functional/make_fused_function_object.cpp | 95 ++++ .../test/functional/make_fused_procedure.cpp | 91 ++++ .../libs/fusion/test/functional/make_unfused.cpp | 128 +++++ src/boost/libs/fusion/test/functional/unfused.cpp | 119 +++++ .../libs/fusion/test/functional/unfused_typed.cpp | 165 ++++++ src/boost/libs/fusion/test/sequence/adapt_adt.cpp | 311 ++++++++++++ .../libs/fusion/test/sequence/adapt_adt_empty.cpp | 87 ++++ .../libs/fusion/test/sequence/adapt_adt_named.cpp | 161 ++++++ .../fusion/test/sequence/adapt_adt_named_empty.cpp | 88 ++++ .../libs/fusion/test/sequence/adapt_assoc_adt.cpp | 164 ++++++ .../fusion/test/sequence/adapt_assoc_adt_empty.cpp | 89 ++++ .../fusion/test/sequence/adapt_assoc_adt_named.cpp | 159 ++++++ .../test/sequence/adapt_assoc_adt_named_empty.cpp | 90 ++++ .../fusion/test/sequence/adapt_assoc_struct.cpp | 168 ++++++ .../test/sequence/adapt_assoc_struct_empty.cpp | 89 ++++ .../test/sequence/adapt_assoc_struct_named.cpp | 139 +++++ .../sequence/adapt_assoc_struct_named_empty.cpp | 90 ++++ .../fusion/test/sequence/adapt_assoc_tpl_adt.cpp | 177 +++++++ .../test/sequence/adapt_assoc_tpl_adt_empty.cpp | 89 ++++ .../test/sequence/adapt_assoc_tpl_struct.cpp | 168 ++++++ .../test/sequence/adapt_assoc_tpl_struct_empty.cpp | 89 ++++ .../libs/fusion/test/sequence/adapt_struct.cpp | 271 ++++++++++ .../fusion/test/sequence/adapt_struct_empty.cpp | 87 ++++ .../fusion/test/sequence/adapt_struct_named.cpp | 164 ++++++ .../test/sequence/adapt_struct_named_empty.cpp | 88 ++++ .../libs/fusion/test/sequence/adapt_tpl_adt.cpp | 182 +++++++ .../fusion/test/sequence/adapt_tpl_adt_empty.cpp | 87 ++++ .../libs/fusion/test/sequence/adapt_tpl_struct.cpp | 159 ++++++ .../test/sequence/adapt_tpl_struct_empty.cpp | 87 ++++ .../fusion/test/sequence/adt_attribute_proxy.cpp | 189 +++++++ src/boost/libs/fusion/test/sequence/array.cpp | 41 ++ src/boost/libs/fusion/test/sequence/as_deque.cpp | 70 +++ src/boost/libs/fusion/test/sequence/as_list.cpp | 53 ++ src/boost/libs/fusion/test/sequence/as_map.cpp | 61 +++ .../libs/fusion/test/sequence/as_map_assoc.cpp | 85 ++++ src/boost/libs/fusion/test/sequence/as_set.cpp | 64 +++ src/boost/libs/fusion/test/sequence/as_vector.cpp | 54 ++ .../fusion/test/sequence/back_extended_deque.cpp | 114 +++++ .../libs/fusion/test/sequence/boost_array.cpp | 44 ++ .../libs/fusion/test/sequence/boost_tuple.cpp | 118 +++++ .../fusion/test/sequence/boost_tuple_iterator.cpp | 21 + src/boost/libs/fusion/test/sequence/comparison.hpp | 79 +++ src/boost/libs/fusion/test/sequence/cons.cpp | 95 ++++ .../libs/fusion/test/sequence/construction.hpp | 122 +++++ src/boost/libs/fusion/test/sequence/conversion.hpp | 322 ++++++++++++ src/boost/libs/fusion/test/sequence/convert.hpp | 51 ++ .../fusion/test/sequence/convert_boost_tuple.cpp | 14 + .../libs/fusion/test/sequence/convert_deque.cpp | 13 + .../libs/fusion/test/sequence/convert_list.cpp | 13 + .../libs/fusion/test/sequence/convert_std_pair.cpp | 14 + .../fusion/test/sequence/convert_std_tuple.cpp | 20 + .../libs/fusion/test/sequence/convert_vector.cpp | 13 + src/boost/libs/fusion/test/sequence/copy.hpp | 154 ++++++ .../libs/fusion/test/sequence/deduce_sequence.cpp | 91 ++++ .../fusion/test/sequence/define_assoc_struct.cpp | 117 +++++ .../test/sequence/define_assoc_struct_empty.cpp | 78 +++ .../test/sequence/define_assoc_struct_move.cpp | 67 +++ .../test/sequence/define_assoc_tpl_struct.cpp | 121 +++++ .../sequence/define_assoc_tpl_struct_empty.cpp | 78 +++ .../test/sequence/define_assoc_tpl_struct_move.cpp | 78 +++ .../libs/fusion/test/sequence/define_struct.cpp | 130 +++++ .../fusion/test/sequence/define_struct_empty.cpp | 76 +++ .../fusion/test/sequence/define_struct_inline.cpp | 153 ++++++ .../test/sequence/define_struct_inline_empty.cpp | 76 +++ .../test/sequence/define_struct_inline_move.cpp | 73 +++ .../fusion/test/sequence/define_struct_move.cpp | 66 +++ .../fusion/test/sequence/define_tpl_struct.cpp | 112 ++++ .../test/sequence/define_tpl_struct_empty.cpp | 75 +++ .../test/sequence/define_tpl_struct_inline.cpp | 138 +++++ .../sequence/define_tpl_struct_inline_empty.cpp | 75 +++ .../sequence/define_tpl_struct_inline_move.cpp | 73 +++ .../test/sequence/define_tpl_struct_move.cpp | 66 +++ .../libs/fusion/test/sequence/deque_comparison.cpp | 20 + .../fusion/test/sequence/deque_construction.cpp | 19 + src/boost/libs/fusion/test/sequence/deque_copy.cpp | 42 ++ src/boost/libs/fusion/test/sequence/deque_hash.cpp | 16 + .../test/sequence/deque_is_constructible.cpp | 21 + .../libs/fusion/test/sequence/deque_iterator.cpp | 19 + src/boost/libs/fusion/test/sequence/deque_make.cpp | 20 + src/boost/libs/fusion/test/sequence/deque_misc.cpp | 24 + src/boost/libs/fusion/test/sequence/deque_move.cpp | 22 + .../libs/fusion/test/sequence/deque_mutate.cpp | 20 + src/boost/libs/fusion/test/sequence/deque_nest.cpp | 43 ++ src/boost/libs/fusion/test/sequence/deque_tie.cpp | 23 + .../libs/fusion/test/sequence/deque_value_at.cpp | 20 + .../libs/fusion/test/sequence/filter_view.cpp | 129 +++++ src/boost/libs/fusion/test/sequence/fixture.hpp | 216 ++++++++ .../libs/fusion/test/sequence/flatten_view.cpp | 56 ++ .../fusion/test/sequence/front_extended_deque.cpp | 114 +++++ src/boost/libs/fusion/test/sequence/github-159.cpp | 16 + src/boost/libs/fusion/test/sequence/github-176.cpp | 90 ++++ src/boost/libs/fusion/test/sequence/hash.cpp | 59 +++ src/boost/libs/fusion/test/sequence/hash.hpp | 35 ++ src/boost/libs/fusion/test/sequence/io.cpp | 131 +++++ src/boost/libs/fusion/test/sequence/iterator.hpp | 200 ++++++++ .../libs/fusion/test/sequence/iterator_range.cpp | 115 +++++ src/boost/libs/fusion/test/sequence/joint_view.cpp | 188 +++++++ .../libs/fusion/test/sequence/list_comparison.cpp | 19 + .../fusion/test/sequence/list_construction.cpp | 18 + src/boost/libs/fusion/test/sequence/list_copy.cpp | 21 + src/boost/libs/fusion/test/sequence/list_hash.cpp | 16 + .../libs/fusion/test/sequence/list_iterator.cpp | 22 + src/boost/libs/fusion/test/sequence/list_make.cpp | 20 + src/boost/libs/fusion/test/sequence/list_misc.cpp | 21 + .../libs/fusion/test/sequence/list_mutate.cpp | 19 + src/boost/libs/fusion/test/sequence/list_nest.cpp | 36 ++ src/boost/libs/fusion/test/sequence/list_tie.cpp | 22 + .../libs/fusion/test/sequence/list_value_at.cpp | 19 + src/boost/libs/fusion/test/sequence/make.hpp | 88 ++++ src/boost/libs/fusion/test/sequence/make_list.cpp | 20 + .../libs/fusion/test/sequence/make_vector.cpp | 20 + src/boost/libs/fusion/test/sequence/map.cpp | 181 +++++++ .../libs/fusion/test/sequence/map_comparison.cpp | 68 +++ .../libs/fusion/test/sequence/map_construction.cpp | 134 +++++ src/boost/libs/fusion/test/sequence/map_copy.cpp | 90 ++++ src/boost/libs/fusion/test/sequence/map_misc.cpp | 179 +++++++ src/boost/libs/fusion/test/sequence/map_move.cpp | 28 + src/boost/libs/fusion/test/sequence/map_mutate.cpp | 69 +++ src/boost/libs/fusion/test/sequence/map_tie.cpp | 35 ++ src/boost/libs/fusion/test/sequence/misc.hpp | 204 ++++++++ src/boost/libs/fusion/test/sequence/move.hpp | 120 +++++ src/boost/libs/fusion/test/sequence/mutate.hpp | 52 ++ src/boost/libs/fusion/test/sequence/nest.hpp | 321 ++++++++++++ src/boost/libs/fusion/test/sequence/nil.cpp | 25 + src/boost/libs/fusion/test/sequence/nview.cpp | 139 +++++ src/boost/libs/fusion/test/sequence/ref_vector.cpp | 64 +++ .../libs/fusion/test/sequence/repetitive_view.cpp | 53 ++ .../libs/fusion/test/sequence/reverse_view.cpp | 109 ++++ .../test/sequence/segmented_iterator_range.cpp | 146 ++++++ src/boost/libs/fusion/test/sequence/set.cpp | 110 ++++ .../libs/fusion/test/sequence/single_view.cpp | 93 ++++ src/boost/libs/fusion/test/sequence/size.cpp | 103 ++++ src/boost/libs/fusion/test/sequence/std_array.cpp | 51 ++ src/boost/libs/fusion/test/sequence/std_pair.cpp | 100 ++++ src/boost/libs/fusion/test/sequence/std_tuple.cpp | 37 ++ .../fusion/test/sequence/std_tuple_iterator.cpp | 26 + src/boost/libs/fusion/test/sequence/swap.cpp | 35 ++ .../fusion/test/sequence/test_deduce_sequence.cpp | 22 + src/boost/libs/fusion/test/sequence/tie.hpp | 85 ++++ src/boost/libs/fusion/test/sequence/traits.hpp | 253 ++++++++++ .../libs/fusion/test/sequence/transform_view.cpp | 115 +++++ src/boost/libs/fusion/test/sequence/tree.hpp | 100 ++++ .../libs/fusion/test/sequence/tuple_comparison.cpp | 20 + .../fusion/test/sequence/tuple_construction.cpp | 49 ++ .../libs/fusion/test/sequence/tuple_conversion.cpp | 51 ++ src/boost/libs/fusion/test/sequence/tuple_copy.cpp | 22 + .../libs/fusion/test/sequence/tuple_element.cpp | 21 + src/boost/libs/fusion/test/sequence/tuple_hash.cpp | 16 + src/boost/libs/fusion/test/sequence/tuple_make.cpp | 21 + src/boost/libs/fusion/test/sequence/tuple_misc.cpp | 23 + .../libs/fusion/test/sequence/tuple_mutate.cpp | 20 + src/boost/libs/fusion/test/sequence/tuple_nest.cpp | 35 ++ src/boost/libs/fusion/test/sequence/tuple_tie.cpp | 22 + .../libs/fusion/test/sequence/tuple_traits.cpp | 89 ++++ src/boost/libs/fusion/test/sequence/value_at.hpp | 100 ++++ .../fusion/test/sequence/vector_comparison.cpp | 19 + .../fusion/test/sequence/vector_construction.cpp | 18 + .../fusion/test/sequence/vector_conversion.cpp | 19 + .../libs/fusion/test/sequence/vector_copy.cpp | 21 + .../libs/fusion/test/sequence/vector_hash.cpp | 16 + .../libs/fusion/test/sequence/vector_iterator.cpp | 22 + .../libs/fusion/test/sequence/vector_make.cpp | 20 + .../libs/fusion/test/sequence/vector_misc.cpp | 21 + .../libs/fusion/test/sequence/vector_move.cpp | 22 + .../libs/fusion/test/sequence/vector_mutate.cpp | 19 + src/boost/libs/fusion/test/sequence/vector_n.cpp | 231 +++++++++ .../libs/fusion/test/sequence/vector_nest.cpp | 19 + src/boost/libs/fusion/test/sequence/vector_tie.cpp | 22 + .../libs/fusion/test/sequence/vector_traits.cpp | 32 ++ .../libs/fusion/test/sequence/vector_value_at.cpp | 19 + src/boost/libs/fusion/test/sequence/zip_view.cpp | 87 ++++ src/boost/libs/fusion/test/sequence/zip_view2.cpp | 64 +++ .../libs/fusion/test/sequence/zip_view_ignore.cpp | 58 +++ src/boost/libs/fusion/test/support/and.cpp | 28 + .../libs/fusion/test/support/index_sequence.cpp | 32 ++ src/boost/libs/fusion/test/support/is_sequence.cpp | 17 + src/boost/libs/fusion/test/support/is_view.cpp | 15 + .../libs/fusion/test/support/pair_container.hpp | 27 + src/boost/libs/fusion/test/support/pair_deque.cpp | 17 + src/boost/libs/fusion/test/support/pair_list.cpp | 17 + src/boost/libs/fusion/test/support/pair_map.cpp | 17 + src/boost/libs/fusion/test/support/pair_nest.cpp | 24 + src/boost/libs/fusion/test/support/pair_set.cpp | 17 + src/boost/libs/fusion/test/support/pair_vector.cpp | 17 + src/boost/libs/fusion/test/support/tag_of.cpp | 17 + src/boost/libs/fusion/test/support/unused.cpp | 96 ++++ 244 files changed, 19172 insertions(+) create mode 100644 src/boost/libs/fusion/test/Jamfile create mode 100644 src/boost/libs/fusion/test/algorithm/all.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/any.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/clear.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/copy.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/count.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/count_if.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/erase.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/erase_key.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/filter.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/filter_if.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/find.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/find_if.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/flatten.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/fold.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/fold.hpp create mode 100644 src/boost/libs/fusion/test/algorithm/for_each.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/insert.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/insert_range.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/iter_fold.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/join.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/move.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/none.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/pop_back.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/pop_front.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/push_back.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/push_front.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/remove.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/remove_if.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/replace.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/replace_if.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/reverse.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/reverse_fold.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/reverse_iter_fold.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/segmented_find.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/segmented_find_if.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/segmented_fold.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/segmented_for_each.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/ticket-5490.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/transform.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/zip.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/zip2.cpp create mode 100644 src/boost/libs/fusion/test/algorithm/zip_ignore.cpp create mode 100644 src/boost/libs/fusion/test/compile_time/Makefile create mode 100644 src/boost/libs/fusion/test/compile_time/driver.hpp create mode 100644 src/boost/libs/fusion/test/compile_time/fold.cpp create mode 100644 src/boost/libs/fusion/test/compile_time/sfinae_friendly.hpp create mode 100644 src/boost/libs/fusion/test/compile_time/transform.cpp create mode 100644 src/boost/libs/fusion/test/compile_time/vector_construction.cpp create mode 100644 src/boost/libs/fusion/test/compile_time/vector_intrinsic.cpp create mode 100644 src/boost/libs/fusion/test/compile_time/vector_iteration.cpp create mode 100644 src/boost/libs/fusion/test/functional/fused.cpp create mode 100644 src/boost/libs/fusion/test/functional/fused_function_object.cpp create mode 100644 src/boost/libs/fusion/test/functional/fused_procedure.cpp create mode 100644 src/boost/libs/fusion/test/functional/invoke.cpp create mode 100644 src/boost/libs/fusion/test/functional/invoke_function_object.cpp create mode 100644 src/boost/libs/fusion/test/functional/invoke_procedure.cpp create mode 100644 src/boost/libs/fusion/test/functional/make_fused.cpp create mode 100644 src/boost/libs/fusion/test/functional/make_fused_function_object.cpp create mode 100644 src/boost/libs/fusion/test/functional/make_fused_procedure.cpp create mode 100644 src/boost/libs/fusion/test/functional/make_unfused.cpp create mode 100644 src/boost/libs/fusion/test/functional/unfused.cpp create mode 100644 src/boost/libs/fusion/test/functional/unfused_typed.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_adt.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_adt_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_adt_named.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_adt_named_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_adt.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_adt_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_adt_named.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_adt_named_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_struct_named.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_struct_named_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_tpl_adt.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_tpl_adt_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_tpl_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_assoc_tpl_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_struct_named.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_struct_named_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_tpl_adt.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_tpl_adt_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_tpl_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adapt_tpl_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/adt_attribute_proxy.cpp create mode 100644 src/boost/libs/fusion/test/sequence/array.cpp create mode 100644 src/boost/libs/fusion/test/sequence/as_deque.cpp create mode 100644 src/boost/libs/fusion/test/sequence/as_list.cpp create mode 100644 src/boost/libs/fusion/test/sequence/as_map.cpp create mode 100644 src/boost/libs/fusion/test/sequence/as_map_assoc.cpp create mode 100644 src/boost/libs/fusion/test/sequence/as_set.cpp create mode 100644 src/boost/libs/fusion/test/sequence/as_vector.cpp create mode 100644 src/boost/libs/fusion/test/sequence/back_extended_deque.cpp create mode 100644 src/boost/libs/fusion/test/sequence/boost_array.cpp create mode 100644 src/boost/libs/fusion/test/sequence/boost_tuple.cpp create mode 100644 src/boost/libs/fusion/test/sequence/boost_tuple_iterator.cpp create mode 100644 src/boost/libs/fusion/test/sequence/comparison.hpp create mode 100644 src/boost/libs/fusion/test/sequence/cons.cpp create mode 100644 src/boost/libs/fusion/test/sequence/construction.hpp create mode 100644 src/boost/libs/fusion/test/sequence/conversion.hpp create mode 100644 src/boost/libs/fusion/test/sequence/convert.hpp create mode 100644 src/boost/libs/fusion/test/sequence/convert_boost_tuple.cpp create mode 100644 src/boost/libs/fusion/test/sequence/convert_deque.cpp create mode 100644 src/boost/libs/fusion/test/sequence/convert_list.cpp create mode 100644 src/boost/libs/fusion/test/sequence/convert_std_pair.cpp create mode 100644 src/boost/libs/fusion/test/sequence/convert_std_tuple.cpp create mode 100644 src/boost/libs/fusion/test/sequence/convert_vector.cpp create mode 100644 src/boost/libs/fusion/test/sequence/copy.hpp create mode 100644 src/boost/libs/fusion/test/sequence/deduce_sequence.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_assoc_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_assoc_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_assoc_struct_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_assoc_tpl_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_assoc_tpl_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_assoc_tpl_struct_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_struct_inline.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_struct_inline_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_struct_inline_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_struct_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_tpl_struct.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_tpl_struct_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_tpl_struct_inline.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_tpl_struct_inline_empty.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_tpl_struct_inline_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/define_tpl_struct_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_comparison.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_construction.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_copy.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_hash.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_is_constructible.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_iterator.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_make.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_misc.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_mutate.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_nest.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_tie.cpp create mode 100644 src/boost/libs/fusion/test/sequence/deque_value_at.cpp create mode 100644 src/boost/libs/fusion/test/sequence/filter_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/fixture.hpp create mode 100644 src/boost/libs/fusion/test/sequence/flatten_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/front_extended_deque.cpp create mode 100644 src/boost/libs/fusion/test/sequence/github-159.cpp create mode 100644 src/boost/libs/fusion/test/sequence/github-176.cpp create mode 100644 src/boost/libs/fusion/test/sequence/hash.cpp create mode 100644 src/boost/libs/fusion/test/sequence/hash.hpp create mode 100644 src/boost/libs/fusion/test/sequence/io.cpp create mode 100644 src/boost/libs/fusion/test/sequence/iterator.hpp create mode 100644 src/boost/libs/fusion/test/sequence/iterator_range.cpp create mode 100644 src/boost/libs/fusion/test/sequence/joint_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_comparison.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_construction.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_copy.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_hash.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_iterator.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_make.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_misc.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_mutate.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_nest.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_tie.cpp create mode 100644 src/boost/libs/fusion/test/sequence/list_value_at.cpp create mode 100644 src/boost/libs/fusion/test/sequence/make.hpp create mode 100644 src/boost/libs/fusion/test/sequence/make_list.cpp create mode 100644 src/boost/libs/fusion/test/sequence/make_vector.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_comparison.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_construction.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_copy.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_misc.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_mutate.cpp create mode 100644 src/boost/libs/fusion/test/sequence/map_tie.cpp create mode 100644 src/boost/libs/fusion/test/sequence/misc.hpp create mode 100644 src/boost/libs/fusion/test/sequence/move.hpp create mode 100644 src/boost/libs/fusion/test/sequence/mutate.hpp create mode 100644 src/boost/libs/fusion/test/sequence/nest.hpp create mode 100644 src/boost/libs/fusion/test/sequence/nil.cpp create mode 100644 src/boost/libs/fusion/test/sequence/nview.cpp create mode 100644 src/boost/libs/fusion/test/sequence/ref_vector.cpp create mode 100644 src/boost/libs/fusion/test/sequence/repetitive_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/reverse_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/segmented_iterator_range.cpp create mode 100644 src/boost/libs/fusion/test/sequence/set.cpp create mode 100644 src/boost/libs/fusion/test/sequence/single_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/size.cpp create mode 100644 src/boost/libs/fusion/test/sequence/std_array.cpp create mode 100644 src/boost/libs/fusion/test/sequence/std_pair.cpp create mode 100644 src/boost/libs/fusion/test/sequence/std_tuple.cpp create mode 100644 src/boost/libs/fusion/test/sequence/std_tuple_iterator.cpp create mode 100644 src/boost/libs/fusion/test/sequence/swap.cpp create mode 100644 src/boost/libs/fusion/test/sequence/test_deduce_sequence.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tie.hpp create mode 100644 src/boost/libs/fusion/test/sequence/traits.hpp create mode 100644 src/boost/libs/fusion/test/sequence/transform_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tree.hpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_comparison.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_construction.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_conversion.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_copy.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_element.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_hash.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_make.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_misc.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_mutate.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_nest.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_tie.cpp create mode 100644 src/boost/libs/fusion/test/sequence/tuple_traits.cpp create mode 100644 src/boost/libs/fusion/test/sequence/value_at.hpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_comparison.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_construction.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_conversion.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_copy.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_hash.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_iterator.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_make.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_misc.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_move.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_mutate.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_n.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_nest.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_tie.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_traits.cpp create mode 100644 src/boost/libs/fusion/test/sequence/vector_value_at.cpp create mode 100644 src/boost/libs/fusion/test/sequence/zip_view.cpp create mode 100644 src/boost/libs/fusion/test/sequence/zip_view2.cpp create mode 100644 src/boost/libs/fusion/test/sequence/zip_view_ignore.cpp create mode 100644 src/boost/libs/fusion/test/support/and.cpp create mode 100644 src/boost/libs/fusion/test/support/index_sequence.cpp create mode 100644 src/boost/libs/fusion/test/support/is_sequence.cpp create mode 100644 src/boost/libs/fusion/test/support/is_view.cpp create mode 100644 src/boost/libs/fusion/test/support/pair_container.hpp create mode 100644 src/boost/libs/fusion/test/support/pair_deque.cpp create mode 100644 src/boost/libs/fusion/test/support/pair_list.cpp create mode 100644 src/boost/libs/fusion/test/support/pair_map.cpp create mode 100644 src/boost/libs/fusion/test/support/pair_nest.cpp create mode 100644 src/boost/libs/fusion/test/support/pair_set.cpp create mode 100644 src/boost/libs/fusion/test/support/pair_vector.cpp create mode 100644 src/boost/libs/fusion/test/support/tag_of.cpp create mode 100644 src/boost/libs/fusion/test/support/unused.cpp (limited to 'src/boost/libs/fusion/test') diff --git a/src/boost/libs/fusion/test/Jamfile b/src/boost/libs/fusion/test/Jamfile new file mode 100644 index 000000000..e55b15ad2 --- /dev/null +++ b/src/boost/libs/fusion/test/Jamfile @@ -0,0 +1,277 @@ +##============================================================================== +# Copyright (c) 2003-2006 Joel de Guzman +# Copyright (c) 2013 Mateusz Loskot +# Copyright (c) 2014-2018 Kohei Takahashi +# +# Use, modification and distribution is 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) +#============================================================================== +# bring in rules for testing +import testing ; +import os ; +import ../../config/checks/config : requires ; + +if [ os.environ CI ] +{ + CI_DEFINES = CI_SKIP_KNOWN_FAILURE=1 ; +} + +project + : requirements + $(CI_DEFINES) + ; + +{ + test-suite fusion : + + [ run algorithm/all.cpp ] + [ run algorithm/any.cpp ] + [ run algorithm/clear.cpp ] + [ run algorithm/copy.cpp ] + [ run algorithm/count.cpp ] + [ run algorithm/count_if.cpp ] + [ run algorithm/erase.cpp ] + [ run algorithm/erase_key.cpp ] + [ run algorithm/filter.cpp ] + [ run algorithm/filter_if.cpp ] + [ run algorithm/find.cpp ] + [ run algorithm/find_if.cpp ] + [ run algorithm/fold.cpp ] + [ run algorithm/for_each.cpp ] + [ run algorithm/insert.cpp ] + [ run algorithm/insert_range.cpp ] + [ run algorithm/iter_fold.cpp ] + [ run algorithm/move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run algorithm/none.cpp ] + [ run algorithm/pop_back.cpp ] + [ run algorithm/pop_front.cpp ] + [ run algorithm/push_back.cpp ] + [ run algorithm/push_front.cpp ] + [ run algorithm/remove.cpp ] + [ run algorithm/remove_if.cpp ] + [ run algorithm/replace.cpp ] + [ run algorithm/replace_if.cpp ] + [ run algorithm/reverse_fold.cpp ] + [ run algorithm/reverse_iter_fold.cpp ] + [ run algorithm/reverse.cpp ] + [ run algorithm/segmented_for_each.cpp ] + [ run algorithm/segmented_find.cpp ] + [ run algorithm/segmented_find_if.cpp ] + [ run algorithm/segmented_fold.cpp ] + [ run algorithm/transform.cpp ] + [ run algorithm/join.cpp ] + [ run algorithm/zip.cpp ] + [ run algorithm/zip2.cpp ] + [ run algorithm/zip_ignore.cpp ] + [ run algorithm/flatten.cpp ] + [ compile algorithm/ticket-5490.cpp ] + + [ run sequence/as_deque.cpp ] + [ run sequence/as_list.cpp ] + [ run sequence/as_map.cpp ] + [ run sequence/as_map_assoc.cpp ] + [ run sequence/as_set.cpp ] + [ run sequence/as_vector.cpp ] + [ run sequence/boost_tuple.cpp ] + [ run sequence/boost_tuple_iterator.cpp ] + [ run sequence/cons.cpp ] + [ run sequence/convert_boost_tuple.cpp ] + [ run sequence/convert_deque.cpp ] + [ run sequence/convert_list.cpp ] + [ run sequence/convert_std_pair.cpp ] + [ run sequence/convert_std_tuple.cpp : : + : [ requires cxx11_variadic_templates cxx11_hdr_tuple ] ] + [ run sequence/convert_vector.cpp ] + [ run sequence/filter_view.cpp ] + [ run sequence/hash.cpp ] + [ run sequence/io.cpp ] + [ run sequence/iterator_range.cpp ] + [ run sequence/joint_view.cpp ] + [ run sequence/list_comparison.cpp ] + [ run sequence/list_construction.cpp ] + [ run sequence/list_copy.cpp ] + [ run sequence/list_iterator.cpp ] + [ run sequence/list_hash.cpp ] + [ run sequence/list_make.cpp ] + [ run sequence/list_misc.cpp ] + [ run sequence/list_mutate.cpp ] + [ run sequence/list_nest.cpp ] + [ run sequence/list_tie.cpp ] + [ run sequence/list_value_at.cpp ] + [ run sequence/deque_comparison.cpp ] + [ run sequence/deque_construction.cpp ] + [ run sequence/deque_copy.cpp ] + [ run sequence/deque_iterator.cpp ] + [ run sequence/deque_hash.cpp ] + [ compile sequence/deque_is_constructible.cpp ] + [ run sequence/deque_make.cpp ] + [ run sequence/deque_misc.cpp ] + [ run sequence/deque_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/deque_mutate.cpp ] + [ run sequence/deque_nest.cpp ] + [ run sequence/deque_tie.cpp ] + [ run sequence/deque_value_at.cpp ] + [ run sequence/front_extended_deque.cpp ] + [ run sequence/back_extended_deque.cpp ] + [ run sequence/make_list.cpp ] + [ run sequence/make_vector.cpp ] + [ run sequence/map.cpp ] + [ run sequence/map_comparison.cpp ] + [ run sequence/map_construction.cpp ] + [ run sequence/map_copy.cpp ] + [ run sequence/map_misc.cpp ] + [ run sequence/map_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/map_mutate.cpp ] + [ run sequence/map_tie.cpp ] + [ run sequence/nil.cpp ] + [ run sequence/nview.cpp ] + [ run sequence/reverse_view.cpp ] + [ run sequence/segmented_iterator_range.cpp ] + [ run sequence/set.cpp ] + [ run sequence/single_view.cpp ] + [ run sequence/std_pair.cpp ] + [ run sequence/boost_array.cpp ] + [ run sequence/array.cpp ] + [ run sequence/std_array.cpp : : + : [ requires cxx11_hdr_array ] ] + [ run sequence/tuple_comparison.cpp ] + [ run sequence/tuple_construction.cpp ] + [ run sequence/tuple_conversion.cpp ] + [ run sequence/tuple_copy.cpp ] + [ run sequence/tuple_element.cpp ] + [ run sequence/tuple_make.cpp ] + [ run sequence/tuple_misc.cpp ] + [ run sequence/tuple_mutate.cpp ] + [ run sequence/tuple_nest.cpp ] + [ run sequence/tuple_hash.cpp ] + [ run sequence/tuple_tie.cpp ] + [ run sequence/tuple_traits.cpp : : + : + : tuple_traits__maybe_variadic ] + [ run sequence/tuple_traits.cpp : : + : BOOST_FUSION_DISABLE_VARIADIC_VECTOR + : tuple_traits__no_variadic ] + [ run sequence/transform_view.cpp ] + [ run sequence/vector_comparison.cpp ] + [ run sequence/vector_construction.cpp ] + [ run sequence/vector_conversion.cpp ] + [ run sequence/vector_copy.cpp ] + [ run sequence/vector_iterator.cpp ] + [ run sequence/vector_make.cpp ] + [ run sequence/vector_misc.cpp ] + [ run sequence/vector_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/vector_mutate.cpp ] + [ run sequence/vector_n.cpp ] + [ run sequence/vector_nest.cpp ] + [ run sequence/vector_hash.cpp ] + [ run sequence/vector_tie.cpp ] + [ run sequence/vector_traits.cpp : : + : + : vector_traits__maybe_variadic ] + [ run sequence/vector_traits.cpp : : + : BOOST_FUSION_DISABLE_VARIADIC_VECTOR + : vector_traits__no_variadic ] + [ run sequence/vector_value_at.cpp ] + [ run sequence/zip_view.cpp ] + [ run sequence/zip_view2.cpp ] + [ run sequence/zip_view_ignore.cpp ] + [ run sequence/repetitive_view.cpp ] + [ run sequence/deduce_sequence.cpp ] + [ run sequence/adapt_adt_named.cpp ] + [ run sequence/adapt_adt_named_empty.cpp ] + [ run sequence/adapt_adt.cpp ] + [ run sequence/adapt_adt_empty.cpp ] + [ run sequence/adapt_assoc_adt_named.cpp ] + [ run sequence/adapt_assoc_adt_named_empty.cpp ] + [ run sequence/adapt_assoc_adt.cpp ] + [ run sequence/adapt_assoc_adt_empty.cpp ] + [ run sequence/adapt_assoc_struct_named.cpp ] + [ run sequence/adapt_assoc_struct_named_empty.cpp ] + [ run sequence/adapt_assoc_struct.cpp ] + [ run sequence/adapt_assoc_struct_empty.cpp ] + [ run sequence/adapt_assoc_tpl_adt.cpp ] + [ run sequence/adapt_assoc_tpl_adt_empty.cpp ] + [ run sequence/adapt_assoc_tpl_struct.cpp ] + [ run sequence/adapt_assoc_tpl_struct_empty.cpp ] + [ run sequence/adapt_struct_named.cpp ] + [ run sequence/adapt_struct_named_empty.cpp ] + [ run sequence/adapt_struct.cpp ] + [ run sequence/adapt_struct_empty.cpp ] + [ run sequence/adapt_tpl_adt.cpp ] + [ run sequence/adapt_tpl_adt_empty.cpp ] + [ run sequence/adapt_tpl_struct.cpp ] + [ run sequence/adapt_tpl_struct_empty.cpp ] + [ run sequence/adt_attribute_proxy.cpp ] + [ run sequence/define_struct.cpp ] + [ run sequence/define_struct_empty.cpp ] + [ run sequence/define_struct_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/define_struct_inline.cpp ] + [ run sequence/define_struct_inline_empty.cpp ] + [ run sequence/define_struct_inline_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/define_assoc_struct.cpp ] + [ run sequence/define_assoc_struct_empty.cpp ] + [ run sequence/define_assoc_struct_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/define_tpl_struct.cpp ] + [ run sequence/define_tpl_struct_empty.cpp ] + [ run sequence/define_tpl_struct_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/define_tpl_struct_inline.cpp ] + [ run sequence/define_tpl_struct_inline_empty.cpp ] + [ run sequence/define_tpl_struct_inline_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/define_assoc_tpl_struct.cpp ] + [ run sequence/define_assoc_tpl_struct_empty.cpp ] + [ run sequence/define_assoc_tpl_struct_move.cpp : : + : [ requires cxx11_rvalue_references ] ] + [ run sequence/std_tuple.cpp : : + : [ requires cxx11_variadic_templates cxx11_hdr_tuple ] ] + [ run sequence/std_tuple_iterator.cpp : : + : [ requires cxx11_variadic_templates cxx11_hdr_tuple ] ] + [ run sequence/ref_vector.cpp ] + [ run sequence/flatten_view.cpp ] + [ compile sequence/github-159.cpp ] + [ run sequence/github-176.cpp ] + + [ compile sequence/size.cpp ] + + [ run functional/fused.cpp ] + [ run functional/fused_function_object.cpp ] + [ run functional/fused_procedure.cpp ] + [ run functional/unfused.cpp ] + [ run functional/unfused_typed.cpp ] + [ run functional/make_fused.cpp ] + [ run functional/make_fused_function_object.cpp ] + [ run functional/make_fused_procedure.cpp ] + [ run functional/make_unfused.cpp ] + [ run functional/invoke.cpp ] + [ run functional/invoke_function_object.cpp ] + [ run functional/invoke_procedure.cpp ] + [ run sequence/swap.cpp ] + + [ compile support/is_sequence.cpp ] + [ compile support/is_view.cpp ] + [ compile support/pair_deque.cpp ] + [ compile support/pair_list.cpp ] + [ compile support/pair_map.cpp ] + [ compile support/pair_set.cpp ] + [ compile support/pair_vector.cpp ] + [ compile support/pair_nest.cpp ] + [ compile support/index_sequence.cpp + : [ requires cxx11_variadic_templates ] ] + [ compile support/and.cpp + : [ requires cxx11_variadic_templates ] ] + [ compile support/tag_of.cpp ] + [ compile support/unused.cpp ] + +# [ compile-fail xxx.cpp ] + + ; +} diff --git a/src/boost/libs/fusion/test/algorithm/all.cpp b/src/boost/libs/fusion/test/algorithm/all.cpp new file mode 100644 index 000000000..7b5550732 --- /dev/null +++ b/src/boost/libs/fusion/test/algorithm/all.cpp @@ -0,0 +1,70 @@ +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + Copyright (c) 2007 Dan Marsden + + Distributed under 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 +#include +#include +#include +#include +#include + +namespace +{ + struct search_for + { + explicit search_for(int in_search) + : search(in_search) + {} + + template + bool operator()(T const& v) const + { + return v == search; + } + + int search; + }; +} + +int +main() +{ + { + boost::fusion::vector<> t; + BOOST_TEST((boost::fusion::all(t, boost::lambda::_1 < 4))); + BOOST_TEST((boost::fusion::all(t, boost::lambda::_1 > 0))); + } + + { + boost::fusion::vector t(1, 2, 3.3); + BOOST_TEST((boost::fusion::all(t, boost::lambda::_1 < 4))); + BOOST_TEST((boost::fusion::all(t, boost::lambda::_1 > 0))); + } + + { + boost::fusion::vector t(1, 2, 3.3, 2); + BOOST_TEST((boost::fusion::all(t, boost::lambda::_1 < 4))); + BOOST_TEST((boost::fusion::all(t, boost::lambda::_1 > 0))); + } + + { + boost::fusion::vector t(1, 2, 3.3); + BOOST_TEST((!boost::fusion::all(t, boost::lambda::_1 == 1))); + BOOST_TEST((!boost::fusion::all(t, boost::lambda::_1 < 3))); + } + + { + typedef boost::mpl::vector_c mpl_vec; + // We cannot use lambda here as mpl vec iterators return + // rvalues, and lambda needs lvalues. + BOOST_TEST(boost::fusion::all(mpl_vec(), search_for(1))); + BOOST_TEST(!boost::fusion::all(mpl_vec(), search_for(2))); + } + + return boost::report_errors(); +} + diff --git a/src/boost/libs/fusion/test/algorithm/any.cpp b/src/boost/libs/fusion/test/algorithm/any.cpp new file mode 100644 index 000000000..da0aa7933 --- /dev/null +++ b/src/boost/libs/fusion/test/algorithm/any.cpp @@ -0,0 +1,57 @@ +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + Copyright (c) 2005 Eric Niebler + Copyright (c) Dan Marsden + + Distributed under 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 +#include +#include +#include +#include +#include + +namespace +{ + struct search_for + { + explicit search_for(int in_search) + : search(in_search) + {} + + template + bool operator()(T const& v) const + { + return v == search; + } + + int search; + }; +} + +int +main() +{ + { + boost::fusion::vector t(1, 2, 3.3); + BOOST_TEST(boost::fusion::any(t, boost::lambda::_1 == 2)); + } + + { + boost::fusion::vector t(1, 2, 3.3); + BOOST_TEST(!boost::fusion::any(t, boost::lambda::_1 == 3)); + } + + { + typedef boost::mpl::vector_c mpl_vec; + // We cannot use lambda here as mpl vec iterators return + // rvalues, and lambda needs lvalues. + BOOST_TEST(boost::fusion::any(mpl_vec(), search_for(2))); + BOOST_TEST(!boost::fusion::any(mpl_vec(), search_for(4))); + } + + return boost::report_errors(); +} + diff --git a/src/boost/libs/fusion/test/algorithm/clear.cpp b/src/boost/libs/fusion/test/algorithm/clear.cpp new file mode 100644 index 000000000..f90f5c0a6 --- /dev/null +++ b/src/boost/libs/fusion/test/algorithm/clear.cpp @@ -0,0 +1,45 @@ +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + + Distributed under 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 +#include +#include +#include +#include +#include +#include + +int +main() +{ + using namespace boost::fusion; + + std::cout << tuple_open('['); + std::cout << tuple_close(']'); + std::cout << tuple_delimiter(", "); + +/// Testing pop_back + + { + char const* s = "Ruby"; + typedef vector vector_type; + vector_type t1(1, 'x', 3.3, s); + + { + std::cout << clear(t1) << std::endl; + BOOST_TEST((clear(t1) == make_vector())); + } + } + + { + typedef boost::mpl::vector_c mpl_vec; + std::cout << boost::fusion::clear(mpl_vec()) << std::endl; + BOOST_TEST((boost::fusion::clear(mpl_vec()) == make_vector())); + } + + return boost::report_errors(); +} + diff --git a/src/boost/libs/fusion/test/algorithm/copy.cpp b/src/boost/libs/fusion/test/algorithm/copy.cpp new file mode 100644 index 000000000..330caca62 --- /dev/null +++ b/src/boost/libs/fusion/test/algorithm/copy.cpp @@ -0,0 +1,26 @@ +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + + Distributed under 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 +#include +#include +#include +#include + +int +main() +{ + { + boost::fusion::vector v(1, 2, 3); + boost::fusion::list l; + + boost::fusion::copy(v, l); + BOOST_TEST(v == l); + } + + return boost::report_errors(); +} + diff --git a/src/boost/libs/fusion/test/algorithm/count.cpp b/src/boost/libs/fusion/test/algorithm/count.cpp new file mode 100644 index 000000000..13aaad1a6 --- /dev/null +++ b/src/boost/libs/fusion/test/algorithm/count.cpp @@ -0,0 +1,41 @@ +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + Copyright (c) 2005 Eric Niebler + + Distributed under 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 +#include +#include +#include +#include +#include + +int +main() +{ + { + boost::fusion::vector t(1, 1, 1); + BOOST_TEST(boost::fusion::count(t, 1) == 3); + } + + { + boost::fusion::vector t(1, 2, 3.3); + BOOST_TEST(boost::fusion::count(t, 3) == 0); + } + + { + boost::fusion::vector t(4, "hello", 4); + BOOST_TEST(boost::fusion::count(t, "hello") == 1); + } + + { + typedef boost::mpl::vector_c mpl_vec; + BOOST_TEST(boost::fusion::count(mpl_vec(), 2) == 3); + BOOST_TEST(boost::fusion::count(mpl_vec(), 3) == 2); + } + + return boost::report_errors(); +} + diff --git a/src/boost/libs/fusion/test/algorithm/count_if.cpp b/src/boost/libs/fusion/test/algorithm/count_if.cpp new file mode 100644 index 000000000..7555f6fcb --- /dev/null +++ b/src/boost/libs/fusion/test/algorithm/count_if.cpp @@ -0,0 +1,46 @@ +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + Copyright (c) 2005 Eric Niebler + + Distributed under 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 +#include +#include +#include +#include +#include + +template struct bind1st; +template