summaryrefslogtreecommitdiffstats
path: root/indexlib/boost-compat/remove_cv.h
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2020-12-15 11:30:44 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2020-12-15 23:05:24 +0900
commit4bd4ac21f11fdb5b76ffda985397398102a81e9b (patch)
tree61b0afd406a0d7554ed4fa85413a53c63f3e2324 /indexlib/boost-compat/remove_cv.h
parent53a24d5c1f80c64dbd28825b546748a3ae36049e (diff)
downloadtdepim-4bd4ac21.tar.gz
tdepim-4bd4ac21.zip
Renaming of files in preparation for code style tools.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 3a75bdfe83b71ef1dbc2fbf52f2d18b8174e22e5)
Diffstat (limited to 'indexlib/boost-compat/remove_cv.h')
-rw-r--r--indexlib/boost-compat/remove_cv.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/indexlib/boost-compat/remove_cv.h b/indexlib/boost-compat/remove_cv.h
new file mode 100644
index 00000000..c59970a8
--- /dev/null
+++ b/indexlib/boost-compat/remove_cv.h
@@ -0,0 +1,61 @@
+#ifndef BOOST_TT_REMOVE_CV_H_INCLUDED
+#define BOOST_TT_REMOVE_CV_H_INCLUDED
+#ifndef BOOST_TT_DETAIL_CV_TRAITS_IMPL_H_INCLUDED
+#define BOOST_TT_DETAIL_CV_TRAITS_IMPL_H_INCLUDED
+// ADAPTED (TAKEN) FROM BOOST
+//
+// (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, Howard
+// Hinnant & John Maddock 2000.
+// Use, modification and distribution are subject to 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).
+//
+// See http://www.boost.org/libs/type_traits for most recent version including documentation.
+//
+
+
+
+
+namespace boost {
+namespace detail {
+
+// implementation helper:
+
+template <typename T> struct cv_traits_imp {};
+
+template <typename T>
+struct cv_traits_imp<T*>
+{
+ typedef T unqualified_type;
+};
+
+template <typename T>
+struct cv_traits_imp<const T*>
+{
+ typedef T unqualified_type;
+};
+
+template <typename T>
+struct cv_traits_imp<volatile T*>
+{
+ typedef T unqualified_type;
+};
+
+template <typename T>
+struct cv_traits_imp<const volatile T*>
+{
+ typedef T unqualified_type;
+};
+
+} // namespace detail
+
+template <typename T>
+struct remove_cv {
+ typedef typename detail::cv_traits_imp<T*>::unqualified_type type;
+};
+} // namespace boost
+
+
+
+#endif
+#endif