Commit Graph

69 Commits

Author SHA1 Message Date
Peter Dimov 9fbf51bbcb Remove bind_front functionality from mp_quote 2017-05-12 19:43:03 +03:00
Peter Dimov 543a0f755e Add mp_apply_q 2017-05-12 19:21:27 +03:00
Peter Dimov 939a3b949d Add mp_bind_q, mp_bind_front(_q), mp_bind_back(_q), mp_transform_q 2017-05-09 20:53:00 +03:00
Peter Dimov 4521eff93c Cast the result of f() to void (avoid op,) 2017-05-08 18:59:19 +03:00
Peter Dimov 28c420edf7 Add mp_same. 2017-04-01 20:01:51 +03:00
Peter Dimov b02e9fbacc Add mp_bind. 2017-04-01 18:42:11 +03:00
Peter Dimov c92d314009 Implement mp_transform_if in terms of mp_transform 2017-04-01 18:08:19 +03:00
Peter Dimov fcbe835f4b Add a variadic mp_transform implementation 2017-04-01 17:39:02 +03:00
Peter Dimov e871f0c30c Optimize mp_append. 2017-03-27 02:00:48 +03:00
Peter Dimov 3cd3a916a8 Use __type_pack_element in mp_at(_c) 2017-03-25 20:32:40 +02:00
Peter Dimov 3242fdb134 Use narrowing instead of static_assert in mp_take 2017-03-24 19:12:13 +02:00
Peter Dimov c059b1ea3f Use narrowing instead of static_assert in mp_repeat 2017-03-24 19:00:52 +02:00
Peter Dimov 946861bb63 Make mp_replace(_if) SFINAE-friendlier. 2017-03-24 18:47:55 +02:00
Peter Dimov d3f4b099d2 Unroll mp_reverse_fold. 2017-03-24 18:10:07 +02:00
Peter Dimov e488469e9a Unroll mp_fold. 2017-03-24 17:21:38 +02:00
Peter Dimov 2bf9bad934 Unroll mp_reverse a bit more. 2017-03-24 16:55:06 +02:00
Peter Dimov c1485d5d51 Improve mp_copy_if, mp_remove(_if), mp_partition 2017-03-24 15:22:10 +02:00
Peter Dimov 42b4561725 Add mp_apply as an alias for mp_rename 2017-03-24 14:26:31 +02:00
Peter Dimov 828dadb167 Unroll mp_append a bit. 2017-03-24 01:15:44 +02:00
Peter Dimov 848c2ff82c Add fold expr implementations of mp_count, mp_count_if 2017-03-23 19:34:43 +02:00
Peter Dimov 72c9c49224 Unroll cx_plus a bit. 2017-03-23 19:22:42 +02:00
Peter Dimov 32938df318 Less clever, much faster, mp_take 2017-03-22 02:03:39 +02:00
Peter Dimov 321a54728f Add indirection in mp_quote to enable expansions of T... into a fixed parameter list 2017-03-20 16:55:00 +02:00
Peter Dimov 71ba80d18a Rename ::invoke to ::fn 2017-03-20 16:23:52 +02:00
Peter Dimov 7e8d618793 Add mp_replace_at(_c) 2017-03-18 20:20:31 +02:00
Peter Dimov 79f8c574f3 Add mp_replace_{front,first,second,third} 2017-03-18 19:58:38 +02:00
Peter Dimov 8e053269a8 Make mp_transform_if variadic. 2017-03-18 19:48:07 +02:00
Peter Dimov e1edd90c21 Fix clang 3.9 -std=c++1z failures 2017-03-18 01:05:54 +02:00
Peter Dimov 946937b5ab Rename Q::apply to Q::invoke, mp_unquote to mp_invoke. 2017-03-16 21:14:42 +02:00
Peter Dimov e4f7488652 Change mp_and and mp_or to match std::conjuction and std::disjunction 2017-03-16 17:49:57 +02:00
Peter Dimov 7bbdaacda1 Remove mp_equal_to. 2017-03-16 17:35:47 +02:00
Peter Dimov a231733c7e Move everything to namespace mp11 2017-03-15 21:23:15 +02:00
Peter Dimov adaa60dbc2 Rename mp_find_index to mp_find 2017-03-15 20:03:56 +02:00
Peter Dimov 8d9e6f50dd Add arguments to mp_quote, allowing partial application 2017-03-15 18:09:30 +02:00
Peter Dimov 5a4fb7f832 Fix function application in mp_map_update 2017-03-14 22:40:47 +02:00
Peter Dimov 6fb4cee7b2 Add mp_transform_if, mp_map_update 2017-03-14 16:32:17 +02:00
Peter Dimov c054b2b2fe Add mp_map_erase. 2017-03-14 02:56:32 +02:00
Peter Dimov 586392ca51 VC++2017 still needs the workarounds. 2017-03-14 00:35:19 +02:00
Peter Dimov 42405ac701 Add mp_map_replace. 2016-11-17 03:38:24 +02:00
Peter Dimov 4a7008562f Add mp_map_insert. 2016-11-17 02:51:12 +02:00
Peter Dimov 9735300f85 Add mp_map_find. 2016-11-17 02:01:50 +02:00
Peter Dimov 7a0f4001e7 Add mp_all, mp_and, mp_any, mp_or; move mp_not to integral.hpp. 2016-11-16 21:24:13 +02:00
Peter Dimov cc3d54a857 Do not use function.hpp in algorithm.hpp. 2016-11-16 19:55:35 +02:00
Peter Dimov 29d030ac59 Add mp_all_of, mp_any_of, mp_none_of. 2016-11-16 04:19:37 +02:00
Peter Dimov 37f088a5bc Boost.Config no longer defines BOOST_NO_CXX11_CONSTEXPR for VS2015u3 2016-10-23 18:16:55 +03:00
Peter Dimov 6af4bbc113 Add mp_quote, mp_unquote. 2015-07-26 17:55:05 +03:00
Peter Dimov e51ed6cf3d Remove mp_defer_if_valid; add mp_identity_t. 2015-07-26 17:43:00 +03:00
Peter Dimov bd9e5f9c41 Add some algorithm names to be implemented. 2015-07-24 13:54:30 +03:00
Peter Dimov e6f83a0d33 Add mp_unique. 2015-07-24 13:45:08 +03:00
Peter Dimov 26575249ff Add mp_set_contains, mp_set_push_back, mp_set_push_front. 2015-07-24 13:19:17 +03:00