[/ / Copyright 2017 Peter Dimov / / 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) /] [section:algorithm Algorithms, ``] [section `mp_assign`] template using mp_assign = /*...*/; [endsect] [section `mp_clear`] template using mp_clear = mp_assign>; [endsect] [section `mp_transform`] template class F, class... L> using mp_transform = /*...*/; [endsect] [section `mp_transform_if`] template class P, template class F, class L> using mp_transform_if = /*...*/; [endsect] [section `mp_fill`] template using mp_fill = /*...*/; [endsect] [section `mp_count`] template using mp_count = /*...*/; [endsect] [section `mp_count_if`] template class P> using mp_count_if = /*...*/; [endsect] [section `mp_contains`] template using mp_contains = mp_to_bool>; [endsect] [section `mp_repeat_c`] template using mp_repeat_c = /*...*/; [endsect] [section `mp_repeat`] template using mp_repeat = /*...*/; [endsect] [section `mp_product`] template class F, class... L> using mp_product = /*...*/; [endsect] [section `mp_drop_c`] template using mp_drop_c = /*...*/; [endsect] [section `mp_drop`] template using mp_drop = /*...*/; [endsect] [section `mp_iota_c`] template using mp_iota_c = /*...*/; [endsect] [section `mp_iota`] template using mp_iota = /*...*/; [endsect] [section `mp_at_c`] template using mp_at_c = /*...*/; [endsect] [section `mp_at`] template using mp_at = /*...*/; [endsect] [section `mp_take_c`] template using mp_take_c = /*...*/; [endsect] [section `mp_take`] template using mp_take = /*...*/; [endsect] [section `mp_replace`] template using mp_replace = /*...*/; [endsect] [section `mp_replace_if`] template class P, class W> using mp_replace_if = /*...*/; [endsect] [section `mp_copy_if`] template class P> using mp_copy_if = /*...*/; [endsect] [section `mp_remove`] template using mp_remove = /*...*/; [endsect] [section `mp_remove_if`] template class P> using mp_remove_if = /*...*/; [endsect] [section `mp_partition`] template class P> using mp_partition = /*...*/; [endsect] [section `mp_sort`] template class P> using mp_sort = /*...*/; [endsect] [section `mp_find_index`] template using mp_find_index = /*...*/; [endsect] [section `mp_find_index_if`] template class P> using mp_find_index_if = /*...*/; [endsect] [section `mp_find`] template using mp_find = mp_drop>; [endsect] [section `mp_find_if`] template class P> using mp_find_if = mp_drop>; [endsect] [section `mp_reverse`] template using mp_reverse = /*...*/; [endsect] [section `mp_fold`] template class F> using mp_fold = /*...*/; [endsect] [section `mp_reverse_fold`] template class F> using mp_reverse_fold = /*...*/; [endsect] [section `mp_unique`] template using mp_unique = /*...*/; [endsect] [section `mp_all_of`] template class P> using mp_all_of = mp_bool< mp_count_if::value == mp_size::value >; [endsect] [section `mp_none_of`] template class P> using mp_none_of = mp_bool< mp_count_if::value == 0 >; [endsect] [section `mp_any_of`] template class P> using mp_any_of = mp_bool< mp_count_if::value != 0 >; [endsect] [endsect]