mirror of
https://github.com/boostorg/mp11.git
synced 2026-07-07 00:50:49 +02:00
72365c218e5dc6fa1480d5bfb0cd1e82c791c8b4
compiler | gcc-15 | clang-20 before | 0:00.21s - 65820K | 0:00.51s - 138048K after | 0:00.21s - 65428K | 0:00.49s - 138540K ```cpp template<class> using pred = mp_false; template<class I, class L = mp_iota<I>> using test = mp_copy_if<L, pred>; using r1 = mp_transform<test, mp_iota_c<120>>; ```
Mp11, a C++11 metaprogramming library
Mp11 is a C++11 metaprogramming library based on template aliases and variadic templates. It implements the approach outlined in the article "Simple C++11 metaprogramming" and its sequel.
Mp11 is part of Boost, starting with release 1.66.0. It
however has no Boost dependencies and can be used standalone, as a Git submodule, for
instance. For CMake users, add_subdirectory is supported, as is installation and
find_package(boost_mp11).
Supported compilers
- g++ 4.8 or later
- clang++ 3.9 or later
- Visual Studio 2013 or later
Tested on Github Actions and Appveyor.
License
Distributed under the Boost Software License, Version 1.0.
Description
Languages
C++
99.1%
CMake
0.5%
Python
0.1%
Shell
0.1%
Batchfile
0.1%