Boost
C++ Libraries
...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
This is an older version of Boost and was released in 2013. The current version is 1.89.0.
Metafunction to apply element conversion to the full argument type.
It removes references to const, references to array types are kept, even if the array is const. Reference wrappers are removed (see boost::ref).
#include <boost/fusion/support/deduce.hpp> #include <boost/fusion/include/deduce.hpp>
namespace traits { template <typename T> struct deduce { typedef unspecified type; }; }
template <typename T> struct holder { typename traits::deduce<T const &>::type element; holder(T const & a) : element(a) { } }; template <typename T> holder<T> make_holder(T const & a) { return holder<T>(a); }