aboutsummaryrefslogtreecommitdiff
path: root/cutl/details/boost/iterator/detail/enable_if.hpp
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2020-12-16 20:29:05 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2021-02-24 16:40:04 +0300
commit8e761289a2446367267c6c0d9a26e734f0f78306 (patch)
treefb495d8c18801f271d124ee48731f10df396ca89 /cutl/details/boost/iterator/detail/enable_if.hpp
parent4c8104756b92b9fa16b3a725e8a6aa620dfd606e (diff)
Get rid of legacy build systems and rename cutl/ to libcutl/
Diffstat (limited to 'cutl/details/boost/iterator/detail/enable_if.hpp')
-rw-r--r--cutl/details/boost/iterator/detail/enable_if.hpp86
1 files changed, 0 insertions, 86 deletions
diff --git a/cutl/details/boost/iterator/detail/enable_if.hpp b/cutl/details/boost/iterator/detail/enable_if.hpp
deleted file mode 100644
index 23f67ef..0000000
--- a/cutl/details/boost/iterator/detail/enable_if.hpp
+++ /dev/null
@@ -1,86 +0,0 @@
-// (C) Copyright David Abrahams 2002.
-// (C) Copyright Jeremy Siek 2002.
-// (C) Copyright Thomas Witt 2002.
-// 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_ENABLE_IF_23022003THW_HPP
-#define BOOST_ENABLE_IF_23022003THW_HPP
-
-#include <cutl/details/boost/detail/workaround.hpp>
-#include <cutl/details/boost/mpl/identity.hpp>
-
-#include <cutl/details/boost/iterator/detail/config_def.hpp>
-
-//
-// Boost iterators uses its own enable_if cause we need
-// special semantics for deficient compilers.
-// 23/02/03 thw
-//
-
-namespace cutl_details_boost
-{
-
- namespace iterators
- {
- //
- // Base machinery for all kinds of enable if
- //
- template<bool>
- struct enabled
- {
- template<typename T>
- struct base
- {
- typedef T type;
- };
- };
-
- //
- // For compilers that don't support "Substitution Failure Is Not An Error"
- // enable_if falls back to always enabled. See comments
- // on operator implementation for consequences.
- //
- template<>
- struct enabled<false>
- {
- template<typename T>
- struct base
- {
-#ifdef BOOST_NO_SFINAE
-
- typedef T type;
-
- // This way to do it would give a nice error message containing
- // invalid overload, but has the big disadvantage that
- // there is no reference to user code in the error message.
- //
- // struct invalid_overload;
- // typedef invalid_overload type;
- //
-#endif
- };
- };
-
-
- template <class Cond,
- class Return>
- struct enable_if
-# if !defined(BOOST_NO_SFINAE) && !defined(BOOST_NO_IS_CONVERTIBLE)
- : enabled<(Cond::value)>::template base<Return>
-# else
- : mpl::identity<Return>
-# endif
- {
-# if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
- typedef Return type;
-# endif
- };
-
- } // namespace iterators
-
-} // namespace cutl_details_boost
-
-#include <cutl/details/boost/iterator/detail/config_undef.hpp>
-
-#endif // BOOST_ENABLE_IF_23022003THW_HPP