12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- /*=============================================================================
- 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)
- ==============================================================================*/
- #ifndef BOOST_PP_IS_ITERATING
- #if !defined(FUSION_TUPLE_TIE_10032005_0846)
- #define FUSION_TUPLE_TIE_10032005_0846
- #include <boost/preprocessor/iterate.hpp>
- #include <boost/preprocessor/cat.hpp>
- #include <boost/preprocessor/repetition/enum_params.hpp>
- #include <boost/preprocessor/repetition/enum_binary_params.hpp>
- #include <boost/fusion/tuple/detail/tuple.hpp>
- #if !defined(BOOST_FUSION_DONT_USE_PREPROCESSED_FILES)
- #include <boost/fusion/tuple/detail/preprocessed/tuple_tie.hpp>
- #else
- #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
- #pragma wave option(preserve: 2, line: 0, output: "preprocessed/tuple_tie" FUSION_MAX_VECTOR_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
- {
- #define BOOST_FUSION_REF(z, n, data) BOOST_PP_CAT(T, n)&
- #define BOOST_PP_FILENAME_1 <boost/fusion/tuple/detail/tuple_tie.hpp>
- #define BOOST_PP_ITERATION_LIMITS (1, FUSION_MAX_VECTOR_SIZE)
- #include BOOST_PP_ITERATE()
- #undef BOOST_FUSION_REF
- }}
- #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)
- #pragma wave option(output: null)
- #endif
- #endif // BOOST_FUSION_DONT_USE_PREPROCESSED_FILES
- #endif
- #else // defined(BOOST_PP_IS_ITERATING)
- ///////////////////////////////////////////////////////////////////////////////
- //
- // Preprocessor vertical repetition code
- //
- ///////////////////////////////////////////////////////////////////////////////
- #define N BOOST_PP_ITERATION()
- template <BOOST_PP_ENUM_PARAMS(N, typename T)>
- BOOST_FUSION_GPU_ENABLED
- inline tuple<BOOST_PP_ENUM(N, BOOST_FUSION_REF, _)>
- tie(BOOST_PP_ENUM_BINARY_PARAMS(N, T, & arg))
- {
- return tuple<BOOST_PP_ENUM(N, BOOST_FUSION_REF, _)>(
- BOOST_PP_ENUM_PARAMS(N, arg));
- }
- #undef N
- #endif // defined(BOOST_PP_IS_ITERATING)
|