mp11 icon indicating copy to clipboard operation
mp11 copied to clipboard

C++11 metaprogramming library

Results 22 mp11 issues
Sort by recently updated
recently updated
newest added

Unfortunately the argument order is incorrect, so perhaps add `tuple_for_each_` with the correct one and make it variadic.

Old versions of gcc (7.1-8.2) don't define `__cpp_nontype_template_parameter_auto` but only `__cpp_template_auto`. Because of that `BOOST_MP11_HAS_TEMPLATE_AUTO` doesn't get set even though those versions support it. spirit checks both (https://github.com/boostorg/spirit/blob/59515f0e56aebdf958eadab30be99cac8872e723/include/boost/spirit/home/x3.hpp#L19). Would this...

In cases a list is a set it is possible to do `mp_find` quicker. Is it worth to add this? ```c++ template using mp_enumerate = mp_transform; template using mp_set_find =...

It would be great to have boost.mp11 available as a single header with root namespace that can be defined from outside. This allows to distribute mp11 along with a library...

I put in bulk the benchmarks and tests that can be found in each commit (issue #77) (result of `/usr/bin/time --format='%Es - %MK' $compiler ...`) ## `mp_transform_if` compiler | gcc-12...

``` template auto list_invoke( F&& f ); // Returns: f( T{}... ), where T... are the elements of L, or mp_value{}..., for a value list ``` Motivation: https://twitter.com/ericniebler/status/1671986987396415491 `list_invoke( [&](auto......

Mp11 does not take full advantage of memoization, which increases compile time and memory usage. For example for `mp_map_find_impl`: ```cpp template struct mp_map_find_impl { using U = mp_inherit; template static...

The code is at https://godbolt.org/z/KvjecnTe3. The code can be compiled if switching to clang 13.0.1, but gcc 11.2 or the trunk version fails. Interestingly, if I comment out line 22...

I just wanted to modernize my code - and try to use `boost::mp11::mp_list` instead of `boost::mpl::vector` in my FSM definitions. Simplified code is as follows: ``` #include #include #include #include...

Assume we want to invoke tuple_for_each or tuple_apply on the keys or values of a map. We can encode our projection inside the function object passed as argument, but it...