SCM Repositories - spirit


Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.2.2 - (download) (annotate)
Thu Jan 5 04:50:01 2006 UTC (3 years, 6 months ago) by djowel
Branch: FUSION_V2
Branch point for: SEGMENTED_FUSION_V2, FUSION_V2_ts_edit
Changes since 1.1.2.1: +1 -1 lines
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