Index: third_party/boost/boost/mpl/aux_/value_wknd.hpp |
diff --git a/third_party/boost/boost/mpl/aux_/value_wknd.hpp b/third_party/boost/boost/mpl/aux_/value_wknd.hpp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..a9f1784171228c081df9faefa3aa8b932b578192 |
--- /dev/null |
+++ b/third_party/boost/boost/mpl/aux_/value_wknd.hpp |
@@ -0,0 +1,89 @@ |
+ |
+#ifndef BOOST_MPL_AUX_VALUE_WKND_HPP_INCLUDED |
+#define BOOST_MPL_AUX_VALUE_WKND_HPP_INCLUDED |
+ |
+// Copyright Aleksey Gurtovoy 2000-2004 |
+// |
+// 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) |
+// |
+// See http://www.boost.org/libs/mpl for documentation. |
+ |
+// $Source$ |
+// $Date: 2004-12-20 12:52:43 -0500 (Mon, 20 Dec 2004) $ |
+// $Revision: 26558 $ |
+ |
+#include <boost/mpl/aux_/static_cast.hpp> |
+#include <boost/mpl/aux_/config/integral.hpp> |
+#include <boost/mpl/aux_/config/eti.hpp> |
+#include <boost/mpl/aux_/config/workaround.hpp> |
+ |
+#if defined(BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS) \ |
+ || defined(BOOST_MPL_CFG_MSVC_60_ETI_BUG) |
+ |
+# include <boost/mpl/int.hpp> |
+ |
+namespace boost { namespace mpl { namespace aux { |
+template< typename C_ > struct value_wknd |
+ : C_ |
+{ |
+}; |
+ |
+#if defined(BOOST_MPL_CFG_MSVC_60_ETI_BUG) |
+template<> struct value_wknd<int> |
+ : int_<1> |
+{ |
+ using int_<1>::value; |
+}; |
+#endif |
+}}} |
+ |
+ |
+#if !defined(BOOST_MPL_CFG_MSVC_60_ETI_BUG) |
+# define BOOST_MPL_AUX_VALUE_WKND(C) \ |
+ ::BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE::aux::value_wknd< C > \ |
+/**/ |
+# define BOOST_MPL_AUX_MSVC_VALUE_WKND(C) BOOST_MPL_AUX_VALUE_WKND(C) |
+#else |
+# define BOOST_MPL_AUX_VALUE_WKND(C) C |
+# define BOOST_MPL_AUX_MSVC_VALUE_WKND(C) \ |
+ ::boost::mpl::aux::value_wknd< C > \ |
+/**/ |
+#endif |
+ |
+#else // BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS |
+ |
+# define BOOST_MPL_AUX_VALUE_WKND(C) C |
+# define BOOST_MPL_AUX_MSVC_VALUE_WKND(C) C |
+ |
+#endif |
+ |
+#if BOOST_WORKAROUND(__EDG_VERSION__, <= 238) |
+# define BOOST_MPL_AUX_NESTED_VALUE_WKND(T, C) \ |
+ BOOST_MPL_AUX_STATIC_CAST(T, C::value) \ |
+/**/ |
+#else |
+# define BOOST_MPL_AUX_NESTED_VALUE_WKND(T, C) \ |
+ BOOST_MPL_AUX_VALUE_WKND(C)::value \ |
+/**/ |
+#endif |
+ |
+ |
+namespace boost { namespace mpl { namespace aux { |
+ |
+template< typename T > struct value_type_wknd |
+{ |
+ typedef typename T::value_type type; |
+}; |
+ |
+#if defined(BOOST_MPL_CFG_MSVC_ETI_BUG) |
+template<> struct value_type_wknd<int> |
+{ |
+ typedef int type; |
+}; |
+#endif |
+ |
+}}} |
+ |
+#endif // BOOST_MPL_AUX_VALUE_WKND_HPP_INCLUDED |