...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::unwrap_recursive_wrapper — Unwraps the specified argument if given a specialization of
recursive_wrapper
.
// In header: <boost/variant/recursive_wrapper.hpp> template<typename T> class unwrap_recursive_wrapper { public: // types typedef unspecified type; };
type
is equivalent to T::type
if
T
is a specialization of
recursive_wrapper
. Otherwise,
type
is equivalent to T
.