Sha256: 02c2fabf01e07881020321b9f11a0800424f4aefda5ae3bd5e6b2c42497d7eef
Contents?: true
Size: 1.02 KB
Versions: 17
Compression:
Stored size: 1.02 KB
Contents
/* Copyright 2019 Glen Joseph Fernandes (glenjofe@gmail.com) Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */ #ifndef BOOST_TT_COPY_REFERENCE_HPP_INCLUDED #define BOOST_TT_COPY_REFERENCE_HPP_INCLUDED #include <boost/type_traits/add_lvalue_reference.hpp> #include <boost/type_traits/add_rvalue_reference.hpp> #include <boost/type_traits/is_lvalue_reference.hpp> #include <boost/type_traits/is_rvalue_reference.hpp> #include <boost/type_traits/conditional.hpp> namespace boost { template<class T, class U> struct copy_reference { typedef typename conditional<is_rvalue_reference<U>::value, typename add_rvalue_reference<T>::type, typename conditional<is_lvalue_reference<U>::value, typename add_lvalue_reference<T>::type, T>::type>::type type; }; #if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) template<class T, class U> using copy_reference_t = typename copy_reference<T, U>::type; #endif } /* boost */ #endif
Version data entries
17 entries across 17 versions & 1 rubygems