Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r57274 - in sandbox/SOC/2009/fusion/boost/fusion: container/generation container/generation/detail container/generation/detail/pp container/list container/list/detail/cons tuple
From: mr.chr.schmidt_at_[hidden]
Date: 2009-11-01 10:42:12


Author: cschmidt
Date: 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
New Revision: 57274
URL: http://svn.boost.org/trac/boost/changeset/57274

Log:
spirit fixes
Text files modified:
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/make_seq.hpp | 13 ++++---
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/seq_tie.hpp | 2
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/seq_tie.hpp | 8 ++++
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/list_tie.hpp | 7 +++
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_list.hpp | 7 +++
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_set.hpp | 7 +++
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_vector.hpp | 9 +++++
   sandbox/SOC/2009/fusion/boost/fusion/container/generation/vector_tie.hpp | 9 +++++
   sandbox/SOC/2009/fusion/boost/fusion/container/list/cons.hpp | 2
   sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/at_impl.hpp | 64 ---------------------------------------
   sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/value_at_impl.hpp | 2
   sandbox/SOC/2009/fusion/boost/fusion/tuple/make_tuple.hpp | 7 +++
   sandbox/SOC/2009/fusion/boost/fusion/tuple/tuple_tie.hpp | 7 +++
   13 files changed, 64 insertions(+), 80 deletions(-)

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/make_seq.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/make_seq.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/make_seq.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -12,13 +12,14 @@
 
 #include <boost/preprocessor/iterate.hpp>
 #include <boost/preprocessor/cat.hpp>
+#include <boost/preprocessor/empty.hpp>
 
 namespace boost { namespace fusion
 {
     namespace result_of
     {
         VARIADIC_TEMPLATE_WITH_DEFAULT(BOOST_FUSION_MAX_SEQ_SIZE)
- struct BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME);
+ struct BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME(BOOST_PP_EMPTY()));
     }
 
 #define BOOST_PP_FILENAME_1 <boost/fusion/container/generation/detail/pp/make_seq.hpp>
@@ -34,12 +35,12 @@
     namespace result_of
     {
         VARIADIC_TEMPLATE(BOOST_FUSION_N)
- struct BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME)
+ struct BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME(BOOST_PP_EMPTY()))
             EXPAND_TEMPLATE_ARGUMENTS_SPECIALIZATION(
                 BOOST_FUSION_MAX_SEQ_SIZE,BOOST_FUSION_N)
         {
             typedef
- BOOST_FUSION_SEQ_NAME<
+ BOOST_FUSION_SEQ_NAME(BOOST_FUSION_N)<
                     EXPAND_TEMPLATE_ARGUMENTS_BINARY(
                             BOOST_FUSION_N,
                             typename traits::deduce<,
@@ -55,17 +56,17 @@
 #if BOOST_FUSION_N
         typename
 #endif
- result_of::BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME)<
+ result_of::BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME(BOOST_PP_EMPTY()))<
             EXPAND_TEMPLATE_ARGUMENTS_A_R_ELSE_CLREF(BOOST_FUSION_N)
>::type
- BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME)(
+ BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME(BOOST_PP_EMPTY()))(
         EXPAND_TEMPLATE_ARGUMENTS_PARAMETERS_A_R_ELSE_CLREF(BOOST_FUSION_N))
     {
         return
 #if BOOST_FUSION_N
             typename
 #endif
- result_of::BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME)<
+ result_of::BOOST_PP_CAT(make_,BOOST_FUSION_SEQ_NAME(BOOST_PP_EMPTY()))<
                 EXPAND_TEMPLATE_ARGUMENTS_A_R_ELSE_CLREF(BOOST_FUSION_N)
>::type(EXPAND_PARAMETERS_A(BOOST_FUSION_N));
     }

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/seq_tie.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/seq_tie.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/pp/seq_tie.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -39,7 +39,7 @@
                     BOOST_FUSION_MAX_SEQ_SIZE,BOOST_FUSION_N)
         {
             typedef
- BOOST_FUSION_SEQ_NAME<
+ BOOST_FUSION_SEQ_NAME(BOOST_FUSION_N)<
                     EXPAND_TEMPLATE_ARGUMENTS_BINARY(
                             BOOST_FUSION_N,
                             typename detail::deduce_ref<,

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/seq_tie.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/seq_tie.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/detail/seq_tie.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -12,7 +12,13 @@
 # include <boost/preprocessor/cat.hpp>
 
 # define BOOST_FUSION_UNDEF_FUNCTION_NAME
-# define BOOST_FUSION_FUNCTION_NAME BOOST_PP_CAT(BOOST_FUSION_SEQ_NAME,_tie)
+# ifdef BOOST_NO_VARIADIC_TEMPLATES
+# include <boost/preprocessor/empty.hpp>
+
+# define BOOST_FUSION_FUNCTION_NAME BOOST_PP_CAT(BOOST_FUSION_SEQ_NAME(BOOST_PP_EMPTY()),_tie)
+# else
+# define BOOST_FUSION_FUNCTION_NAME BOOST_PP_CAT(BOOST_FUSION_SEQ_NAME,_tie)
+# endif
 #endif
 
 #ifdef BOOST_NO_VARIADIC_TEMPLATES

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/list_tie.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/list_tie.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/list_tie.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -8,9 +8,14 @@
 #ifndef BOOST_FUSION_CONTAINER_GENERATION_LIST_TIE_HPP
 #define BOOST_FUSION_CONTAINER_GENERATION_LIST_TIE_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/container/list/list.hpp>
 
-#define BOOST_FUSION_SEQ_NAME list
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# define BOOST_FUSION_SEQ_NAME(N) list
+#else
+# define BOOST_FUSION_SEQ_NAME list
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_LIST_SIZE
 #include <boost/fusion/container/generation/detail/seq_tie.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_list.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_list.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_list.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -8,9 +8,14 @@
 #ifndef BOOST_FUSION_CONTAINER_GENERATION_MAKE_LIST_HPP
 #define BOOST_FUSION_CONTAINER_GENERATION_MAKE_LIST_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/container/list/list.hpp>
 
-#define BOOST_FUSION_SEQ_NAME list
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# define BOOST_FUSION_SEQ_NAME(N) list
+#else
+# define BOOST_FUSION_SEQ_NAME list
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_LIST_SIZE
 #include <boost/fusion/container/generation/detail/make_seq.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_set.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_set.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_set.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -8,9 +8,14 @@
 #ifndef BOOST_FUSION_CONTAINER_GENERATION_MAKE_SET_HPP
 #define BOOST_FUSION_CONTAINER_GENERATION_MAKE_SET_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/container/set/set.hpp>
 
-#define BOOST_FUSION_SEQ_NAME set
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# define BOOST_FUSION_SEQ_NAME(N) set
+#else
+# define BOOST_FUSION_SEQ_NAME set
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_SET_SIZE
 #include <boost/fusion/container/generation/detail/make_seq.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_vector.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_vector.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/make_vector.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -8,9 +8,16 @@
 #ifndef BOOST_FUSION_CONTAINER_GENERATION_MAKE_VECTOR_HPP
 #define BOOST_FUSION_CONTAINER_GENERATION_MAKE_VECTOR_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 
-#define BOOST_FUSION_SEQ_NAME vector
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# include <boost/preprocessor/cat.hpp>
+
+# define BOOST_FUSION_SEQ_NAME(N) BOOST_PP_CAT(vector,N)
+#else
+# define BOOST_FUSION_SEQ_NAME vector
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_VECTOR_SIZE
 #include <boost/fusion/container/generation/detail/make_seq.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/generation/vector_tie.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/generation/vector_tie.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/generation/vector_tie.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -8,9 +8,16 @@
 #ifndef BOOST_FUSION_CONTAINER_GENERATION_VECTOR_TIE_HPP
 #define BOOST_FUSION_CONTAINER_GENERATION_VECTOR_TIE_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 
-#define BOOST_FUSION_SEQ_NAME vector
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# include <boost/preprocessor/cat.hpp>
+
+# define BOOST_FUSION_SEQ_NAME(N) BOOST_PP_CAT(vector,N)
+#else
+# define BOOST_FUSION_SEQ_NAME vector
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_VECTOR_SIZE
 #include <boost/fusion/container/generation/detail/seq_tie.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/list/cons.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/list/cons.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/list/cons.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -36,8 +36,8 @@
 #include <boost/utility/enable_if.hpp>
 
 #include <boost/fusion/container/list/detail/cons/cons_fwd.hpp>
-#include <boost/fusion/container/list/detail/cons/at_impl.hpp>
 #include <boost/fusion/container/list/detail/cons/value_at_impl.hpp>
+#include <boost/fusion/container/list/detail/cons/at_impl.hpp>
 #include <boost/fusion/container/list/detail/cons/empty_impl.hpp>
 
 #include <boost/fusion/container/list/detail/cons/cons_iterator.hpp>

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/at_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/at_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/at_impl.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -14,68 +14,6 @@
 
 namespace boost { namespace fusion
 {
- namespace detail
- {
- template <typename Cons, int I>
- struct cons_advance
- {
- typedef typename
- cons_advance<
- typename cons_advance<Cons, 4>::type
- , I-4
- >::type::cdr_type
- type;
- };
-
- template <typename Cons>
- struct cons_advance<Cons, 0>
- {
- typedef Cons type;
- };
-
- template <typename Cons>
- struct cons_advance<Cons, 1>
- {
- typedef typename Cons::cdr_type type;
- };
-
- template <typename Cons>
- struct cons_advance<Cons, 2>
- {
-#if BOOST_WORKAROUND(BOOST_MSVC, > 1400) // VC8 and above
- typedef typename Cons::cdr_type::cdr_type type;
-#else
- typedef typename Cons::cdr_type _a;
- typedef typename _a::cdr_type type;
-#endif
- };
-
- template <typename Cons>
- struct cons_advance<Cons, 3>
- {
-#if BOOST_WORKAROUND(BOOST_MSVC, > 1400) // VC8 and above
- typedef typename Cons::cdr_type::cdr_type::cdr_type type;
-#else
- typedef typename Cons::cdr_type _a;
- typedef typename _a::cdr_type _b;
- typedef typename _b::cdr_type type;
-#endif
- };
-
- template <typename Cons>
- struct cons_advance<Cons, 4>
- {
-#if BOOST_WORKAROUND(BOOST_MSVC, > 1400) // VC8 and above
- typedef typename Cons::cdr_type::cdr_type::cdr_type::cdr_type type;
-#else
- typedef typename Cons::cdr_type _a;
- typedef typename _a::cdr_type _b;
- typedef typename _b::cdr_type _c;
- typedef typename _c::cdr_type type;
-#endif
- };
- }
-
     namespace extension
     {
         template <typename>
@@ -90,7 +28,7 @@
                 typedef typename
                     detail::forward_as<
                         Seq
- , typename detail::cons_advance<Seq, N::value>::type
+ , typename value_at_impl<cons_tag>::template apply<Seq, N>::type
>::type
                 type;
 

Modified: sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/value_at_impl.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/value_at_impl.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/container/list/detail/cons/value_at_impl.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -28,8 +28,8 @@
             typedef typename
                 mpl::eval_if<
                     N
- , mpl::identity<typename seq::car_type>
                   , apply<typename seq::cdr_type, mpl::int_<N::value-1> >
+ , mpl::identity<typename seq::car_type>
>::type
             type;
         };

Modified: sandbox/SOC/2009/fusion/boost/fusion/tuple/make_tuple.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/tuple/make_tuple.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/tuple/make_tuple.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -9,9 +9,14 @@
 #ifndef BOOST_FUSION_TUPLE_MAKE_TUPLE_HPP
 #define BOOST_FUSION_TUPLE_MAKE_TUPLE_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/tuple/tuple.hpp>
 
-#define BOOST_FUSION_SEQ_NAME tuple
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# define BOOST_FUSION_SEQ_NAME(N) tuple
+#else
+# define BOOST_FUSION_SEQ_NAME tuple
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_VECTOR_SIZE
 #include <boost/fusion/container/generation/detail/make_seq.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE

Modified: sandbox/SOC/2009/fusion/boost/fusion/tuple/tuple_tie.hpp
==============================================================================
--- sandbox/SOC/2009/fusion/boost/fusion/tuple/tuple_tie.hpp (original)
+++ sandbox/SOC/2009/fusion/boost/fusion/tuple/tuple_tie.hpp 2009-11-01 10:42:10 EST (Sun, 01 Nov 2009)
@@ -9,10 +9,15 @@
 #ifndef BOOST_FUSION_TUPLE_TUPLE_TIE_HPP
 #define BOOST_FUSION_TUPLE_TUPLE_TIE_HPP
 
+#include <boost/config.hpp>
 #include <boost/fusion/tuple/tuple.hpp>
 
 #define BOOST_FUSION_FUNCTION_NAME tie
-#define BOOST_FUSION_SEQ_NAME tuple
+#ifdef BOOST_NO_VARIADIC_TEMPLATES
+# define BOOST_FUSION_SEQ_NAME(N) tuple
+#else
+# define BOOST_FUSION_SEQ_NAME tuple
+#endif
 #define BOOST_FUSION_MAX_SEQ_SIZE FUSION_MAX_VECTOR_SIZE
 #include <boost/fusion/container/generation/detail/seq_tie.hpp>
 #undef BOOST_FUSION_MAX_SEQ_SIZE


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk