]> git.lyx.org Git - features.git/blobdiff - boost/boost/utility/detail/result_of_iterate.hpp
boost: add eol property
[features.git] / boost / boost / utility / detail / result_of_iterate.hpp
index dd32cc285ff80afdac7ca566106c3e2171d84ca5..41616c3f301363eb286c257adc2d31c61e820076 100644 (file)
@@ -1,89 +1,89 @@
-// Boost result_of library\r
-\r
-//  Copyright Douglas Gregor 2004. Use, modification and\r
-//  distribution is subject to the Boost Software License, Version\r
-//  1.0. (See accompanying file LICENSE_1_0.txt or copy at\r
-//  http://www.boost.org/LICENSE_1_0.txt)\r
-\r
-// For more information, see http://www.boost.org/libs/utility\r
-#if !defined(BOOST_PP_IS_ITERATING)\r
-# error Boost result_of - do not include this file!\r
-#endif\r
-\r
-// CWPro8 requires an argument in a function type specialization\r
-#if BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3002)) && BOOST_PP_ITERATION() == 0\r
-# define BOOST_RESULT_OF_ARGS void\r
-#else\r
-# define BOOST_RESULT_OF_ARGS BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)\r
-#endif\r
-\r
-#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551))\r
-template<typename F BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of<F(BOOST_RESULT_OF_ARGS)>\r
-    : boost::detail::result_of_impl<F, F(BOOST_RESULT_OF_ARGS), (boost::detail::has_result_type<F>::value)> {};\r
-#endif\r
-\r
-#undef BOOST_RESULT_OF_ARGS\r
-\r
-#if BOOST_PP_ITERATION() >= 1 \r
-\r
-namespace detail {\r
-\r
-template<typename R,  typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of_impl<R (*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)), FArgs, false>\r
-{\r
-  typedef R type;\r
-};\r
-\r
-template<typename R,  typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of_impl<R (&)(BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)), FArgs, false>\r
-{\r
-  typedef R type;\r
-};\r
-\r
-#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551))\r
-template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of_impl<R (T0::*)\r
-                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T)),\r
-                 FArgs, false>\r
-{\r
-  typedef R type;\r
-};\r
-\r
-template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of_impl<R (T0::*)\r
-                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T))\r
-                     const,\r
-                 FArgs, false>\r
-{\r
-  typedef R type;\r
-};\r
-\r
-template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of_impl<R (T0::*)\r
-                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T))\r
-                     volatile,\r
-                 FArgs, false>\r
-{\r
-  typedef R type;\r
-};\r
-\r
-template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())\r
-         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>\r
-struct result_of_impl<R (T0::*)\r
-                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T))\r
-                     const volatile,\r
-                 FArgs, false>\r
-{\r
-  typedef R type;\r
-};\r
-#endif\r
-\r
-}\r
-#endif\r
+// Boost result_of library
+
+//  Copyright Douglas Gregor 2004. Use, modification and
+//  distribution is 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)
+
+// For more information, see http://www.boost.org/libs/utility
+#if !defined(BOOST_PP_IS_ITERATING)
+# error Boost result_of - do not include this file!
+#endif
+
+// CWPro8 requires an argument in a function type specialization
+#if BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3002)) && BOOST_PP_ITERATION() == 0
+# define BOOST_RESULT_OF_ARGS void
+#else
+# define BOOST_RESULT_OF_ARGS BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)
+#endif
+
+#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551))
+template<typename F BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of<F(BOOST_RESULT_OF_ARGS)>
+    : boost::detail::result_of_impl<F, F(BOOST_RESULT_OF_ARGS), (boost::detail::has_result_type<F>::value)> {};
+#endif
+
+#undef BOOST_RESULT_OF_ARGS
+
+#if BOOST_PP_ITERATION() >= 1 
+
+namespace detail {
+
+template<typename R,  typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of_impl<R (*)(BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)), FArgs, false>
+{
+  typedef R type;
+};
+
+template<typename R,  typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of_impl<R (&)(BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),T)), FArgs, false>
+{
+  typedef R type;
+};
+
+#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x551))
+template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of_impl<R (T0::*)
+                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T)),
+                 FArgs, false>
+{
+  typedef R type;
+};
+
+template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of_impl<R (T0::*)
+                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T))
+                     const,
+                 FArgs, false>
+{
+  typedef R type;
+};
+
+template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of_impl<R (T0::*)
+                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T))
+                     volatile,
+                 FArgs, false>
+{
+  typedef R type;
+};
+
+template<typename R, typename FArgs BOOST_PP_COMMA_IF(BOOST_PP_ITERATION())
+         BOOST_PP_ENUM_PARAMS(BOOST_PP_ITERATION(),typename T)>
+struct result_of_impl<R (T0::*)
+                     (BOOST_PP_ENUM_SHIFTED_PARAMS(BOOST_PP_ITERATION(),T))
+                     const volatile,
+                 FArgs, false>
+{
+  typedef R type;
+};
+#endif
+
+}
+#endif