// Copyright 2010 John Maddock // Distributed under the Boost Software License, Version 1.0. // See http://www.boost.org/LICENSE_1_0.txt #ifndef BOOST_TYPE_TRAITS_EXT_ADD_LVALUE_REFERENCE__HPP #define BOOST_TYPE_TRAITS_EXT_ADD_LVALUE_REFERENCE__HPP #include namespace boost{ template struct add_lvalue_reference { typedef typename boost::add_reference::type type; }; #ifndef BOOST_NO_CXX11_RVALUE_REFERENCES template struct add_lvalue_reference { typedef T& type; }; #endif #if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) template using add_lvalue_reference_t = typename add_lvalue_reference::type; #endif } #endif // BOOST_TYPE_TRAITS_EXT_ADD_LVALUE_REFERENCE__HPP