Sha256: 18e7f66e6a4f83c76fbafe87826bbf28bbd0bd59228e271de8ff85edd82d823d
Contents?: true
Size: 923 Bytes
Versions: 28
Compression:
Stored size: 923 Bytes
Contents
#ifndef BOOST_TYPE_TRAITS_COPY_CV_HPP_INCLUDED #define BOOST_TYPE_TRAITS_COPY_CV_HPP_INCLUDED // // Copyright 2015 Peter Dimov // // 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 // #include <boost/type_traits/is_const.hpp> #include <boost/type_traits/is_volatile.hpp> #include <boost/type_traits/add_const.hpp> #include <boost/type_traits/add_volatile.hpp> #include <boost/type_traits/conditional.hpp> namespace boost { template<class T, class U> struct copy_cv { private: typedef typename boost::conditional<boost::is_const<U>::value, typename boost::add_const<T>::type, T>::type CT; public: typedef typename boost::conditional<boost::is_volatile<U>::value, typename boost::add_volatile<CT>::type, CT>::type type; }; } // namespace boost #endif // #ifndef BOOST_TYPE_TRAITS_COPY_CV_HPP_INCLUDED
Version data entries
28 entries across 28 versions & 2 rubygems