diff --git a/include/boost/fusion/container/list/detail/list_to_cons.hpp b/include/boost/fusion/container/list/detail/list_to_cons.hpp index 80cfd0b4..4a7dbb83 100644 --- a/include/boost/fusion/container/list/detail/list_to_cons.hpp +++ b/include/boost/fusion/container/list/detail/list_to_cons.hpp @@ -1,7 +1,7 @@ /*============================================================================= Copyright (c) 2001-2011 Joel de Guzman - Distributed under the Boost Software License, Version 1.0. (See accompanying + 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) ==============================================================================*/ #if !defined(FUSION_LIST_TO_CONS_07172005_1041) @@ -22,6 +22,26 @@ namespace boost { namespace fusion struct void_; }} +#if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES) +#include +#else +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(preserve: 2, line: 0, output: "preprocessed/list_to_cons" FUSION_MAX_LIST_SIZE_STR ".hpp") +#endif + +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + + 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) + + This is an auto-generated file. Do not edit! +==============================================================================*/ + +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(preserve: 1) +#endif + namespace boost { namespace fusion { namespace detail { template @@ -32,9 +52,9 @@ namespace boost { namespace fusion { namespace detail BOOST_PP_ENUM_SHIFTED_PARAMS(FUSION_MAX_LIST_SIZE, T), void_> tail_list_to_cons; typedef typename tail_list_to_cons::type tail_type; - + typedef cons type; - + #include }; @@ -42,8 +62,14 @@ namespace boost { namespace fusion { namespace detail struct list_to_cons { typedef nil type; - }; + }; }}} +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(output: null) +#endif + +#endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES + #undef FUSION_VOID #endif diff --git a/include/boost/fusion/container/list/limits.hpp b/include/boost/fusion/container/list/limits.hpp index 9940247a..1f3aeec8 100644 --- a/include/boost/fusion/container/list/limits.hpp +++ b/include/boost/fusion/container/list/limits.hpp @@ -1,7 +1,7 @@ /*============================================================================= Copyright (c) 2001-2011 Joel de Guzman - Distributed under the Boost Software License, Version 1.0. (See accompanying + 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) ==============================================================================*/ #if !defined(FUSION_LIST_LIMITS_07172005_0112) @@ -16,4 +16,6 @@ # endif #endif +#define FUSION_MAX_LIST_SIZE_STR BOOST_PP_STRINGIZE(BOOST_PHOENIX_PP_ROUND_UP(FUSION_MAX_LIST_SIZE)) + #endif diff --git a/include/boost/fusion/container/list/list.hpp b/include/boost/fusion/container/list/list.hpp index 63d0ab32..45e2f637 100644 --- a/include/boost/fusion/container/list/list.hpp +++ b/include/boost/fusion/container/list/list.hpp @@ -1,7 +1,7 @@ /*============================================================================= Copyright (c) 2001-2011 Joel de Guzman - Distributed under the Boost Software License, Version 1.0. (See accompanying + 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) ==============================================================================*/ #if !defined(FUSION_LIST_07172005_1153) @@ -10,17 +10,37 @@ #include #include +#if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES) +#include +#else +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(preserve: 2, line: 0, output: "detail/preprocessed/list" FUSION_MAX_LIST_SIZE_STR ".hpp") +#endif + +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + + 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) + + This is an auto-generated file. Do not edit! +==============================================================================*/ + +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(preserve: 1) +#endif + namespace boost { namespace fusion { struct nil; struct void_; template - struct list + struct list : detail::list_to_cons::type { private: - typedef + typedef detail::list_to_cons list_to_cons; @@ -65,4 +85,10 @@ namespace boost { namespace fusion }; }} +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(output: null) +#endif + +#endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES + #endif diff --git a/include/boost/fusion/container/list/list_fwd.hpp b/include/boost/fusion/container/list/list_fwd.hpp index 02da7b9a..cc476fcc 100644 --- a/include/boost/fusion/container/list/list_fwd.hpp +++ b/include/boost/fusion/container/list/list_fwd.hpp @@ -1,7 +1,7 @@ /*============================================================================= Copyright (c) 2001-2011 Joel de Guzman - Distributed under the Boost Software License, Version 1.0. (See accompanying + 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) ==============================================================================*/ #if !defined(FUSION_LIST_FORWARD_07172005_0224) @@ -14,11 +14,38 @@ namespace boost { namespace fusion { struct void_; +#if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES) +#include +#else +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(preserve: 2, line: 0, output: "detail/preprocessed/list" FUSION_MAX_LIST_SIZE_STR "_fwd.hpp") +#endif + +/*============================================================================= + Copyright (c) 2001-2011 Joel de Guzman + + 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) + + This is an auto-generated file. Do not edit! +==============================================================================*/ + +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(preserve: 1) +#endif + template < BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT( FUSION_MAX_LIST_SIZE, typename T, void_) > struct list; + +#if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) +#pragma wave option(output: null) +#endif + +#endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES + }} #endif diff --git a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser10.hpp b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser10.hpp index 91e99f93..a4950c07 100644 --- a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser10.hpp +++ b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser10.hpp @@ -6,6 +6,16 @@ This is an auto-generated file. Do not edit! ==============================================================================*/ + template + struct vector_n_chooser + { + typedef vector10 type; + }; + template <> + struct vector_n_chooser + { + typedef vector0<> type; + }; template struct vector_n_chooser< T0 diff --git a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser20.hpp b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser20.hpp index 64513770..9eaeaed9 100644 --- a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser20.hpp +++ b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser20.hpp @@ -6,6 +6,16 @@ This is an auto-generated file. Do not edit! ==============================================================================*/ + template + struct vector_n_chooser + { + typedef vector20 type; + }; + template <> + struct vector_n_chooser + { + typedef vector0<> type; + }; template struct vector_n_chooser< T0 diff --git a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser30.hpp b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser30.hpp index 2cd396e6..c92ade34 100644 --- a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser30.hpp +++ b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser30.hpp @@ -6,6 +6,16 @@ This is an auto-generated file. Do not edit! ==============================================================================*/ + template + struct vector_n_chooser + { + typedef vector30 type; + }; + template <> + struct vector_n_chooser + { + typedef vector0<> type; + }; template struct vector_n_chooser< T0 diff --git a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser40.hpp b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser40.hpp index e3c63972..b9f701a9 100644 --- a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser40.hpp +++ b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser40.hpp @@ -6,6 +6,16 @@ This is an auto-generated file. Do not edit! ==============================================================================*/ + template + struct vector_n_chooser + { + typedef vector40 type; + }; + template <> + struct vector_n_chooser + { + typedef vector0<> type; + }; template struct vector_n_chooser< T0 diff --git a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser50.hpp b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser50.hpp index 61c38694..ed6c4d40 100644 --- a/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser50.hpp +++ b/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser50.hpp @@ -6,6 +6,16 @@ This is an auto-generated file. Do not edit! ==============================================================================*/ + template + struct vector_n_chooser + { + typedef vector50 type; + }; + template <> + struct vector_n_chooser + { + typedef vector0<> type; + }; template struct vector_n_chooser< T0 diff --git a/include/boost/fusion/container/vector/detail/vector_n_chooser.hpp b/include/boost/fusion/container/vector/detail/vector_n_chooser.hpp index 59fc4191..a03d68b1 100644 --- a/include/boost/fusion/container/vector/detail/vector_n_chooser.hpp +++ b/include/boost/fusion/container/vector/detail/vector_n_chooser.hpp @@ -39,18 +39,6 @@ namespace boost { namespace fusion namespace boost { namespace fusion { namespace detail { - template - struct vector_n_chooser - { - typedef BOOST_PP_CAT(vector, FUSION_MAX_VECTOR_SIZE) type; - }; - - template <> - struct vector_n_chooser - { - typedef vector0<> type; - }; - #if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES) #include #else @@ -71,6 +59,18 @@ namespace boost { namespace fusion { namespace detail #pragma wave option(preserve: 1) #endif + template + struct vector_n_chooser + { + typedef BOOST_PP_CAT(vector, FUSION_MAX_VECTOR_SIZE) type; + }; + + template <> + struct vector_n_chooser + { + typedef vector0<> type; + }; + #define BOOST_PP_FILENAME_1 \ #define BOOST_PP_ITERATION_LIMITS (1, BOOST_PP_DEC(FUSION_MAX_VECTOR_SIZE))