summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/mpl/list/aux_/numbered.hpp')
-rw-r--r--3rdParty/Boost/src/boost/mpl/list/aux_/numbered.hpp68
1 files changed, 68 insertions, 0 deletions
diff --git a/3rdParty/Boost/src/boost/mpl/list/aux_/numbered.hpp b/3rdParty/Boost/src/boost/mpl/list/aux_/numbered.hpp
new file mode 100644
index 0000000..de8d404
--- /dev/null
+++ b/3rdParty/Boost/src/boost/mpl/list/aux_/numbered.hpp
@@ -0,0 +1,68 @@
+
+// NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION
+
+// Copyright Peter Dimov 2000-2002
+// 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.
+
+// $Id: numbered.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
+// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
+// $Revision: 49267 $
+
+#if defined(BOOST_PP_IS_ITERATING)
+
+#include <boost/preprocessor/enum_params.hpp>
+#include <boost/preprocessor/enum_shifted_params.hpp>
+#include <boost/preprocessor/dec.hpp>
+#include <boost/preprocessor/cat.hpp>
+
+#define i BOOST_PP_FRAME_ITERATION(1)
+
+#if i == 1
+
+template<
+ BOOST_PP_ENUM_PARAMS(i, typename T)
+ >
+struct list1
+ : l_item<
+ long_<1>
+ , T0
+ , l_end
+ >
+{
+ typedef list1 type;
+};
+
+#else
+
+# define MPL_AUX_LIST_TAIL(list, i, T) \
+ BOOST_PP_CAT(list,BOOST_PP_DEC(i))< \
+ BOOST_PP_ENUM_SHIFTED_PARAMS(i, T) \
+ > \
+ /**/
+
+template<
+ BOOST_PP_ENUM_PARAMS(i, typename T)
+ >
+struct BOOST_PP_CAT(list,i)
+ : l_item<
+ long_<i>
+ , T0
+ , MPL_AUX_LIST_TAIL(list,i,T)
+ >
+{
+ typedef BOOST_PP_CAT(list,i) type;
+};
+
+# undef MPL_AUX_LIST_TAIL
+
+#endif // i == 1
+
+#undef i
+
+#endif // BOOST_PP_IS_ITERATING