Parent Directory
|
Revision Log
Bumping Copyright Date + Added compiler_config.hpp which has (for now) supress for annoying VC++ warnings
1 /*============================================================================= 2 Copyright (c) 2001-2006 Joel de Guzman 3 4 Use, modification and distribution is subject to the Boost Software 5 License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 6 http://www.boost.org/LICENSE_1_0.txt) 7 ==============================================================================*/ 8 #ifndef BOOST_PP_IS_ITERATING 9 #if !defined(FUSION_TUPLE_FORWARD_CTOR_10032005_0815) 10 #define FUSION_TUPLE_FORWARD_CTOR_10032005_0815 11 12 #include <boost/preprocessor/iterate.hpp> 13 #include <boost/preprocessor/repetition/enum_params.hpp> 14 #include <boost/preprocessor/repetition/enum_binary_params.hpp> 15 16 #define BOOST_PP_FILENAME_1 \ 17 <boost/fusion/tuple/detail/tuple_forward_ctor.hpp> 18 #define BOOST_PP_ITERATION_LIMITS (1, FUSION_MAX_VECTOR_SIZE) 19 #include BOOST_PP_ITERATE() 20 21 #endif 22 #else // defined(BOOST_PP_IS_ITERATING) 23 /////////////////////////////////////////////////////////////////////////////// 24 // 25 // Preprocessor vertical repetition code 26 // 27 /////////////////////////////////////////////////////////////////////////////// 28 29 #define N BOOST_PP_ITERATION() 30 31 #if N == 1 32 explicit 33 #endif 34 tuple(BOOST_PP_ENUM_BINARY_PARAMS( 35 N, typename detail::call_param<T, >::type _)) 36 : base_type(BOOST_PP_ENUM_PARAMS(N, _)) {} 37 38 #undef N 39 #endif // defined(BOOST_PP_IS_ITERATING) 40