williamr@4: williamr@4: #ifndef BOOST_MPL_AUX_PREPROCESSOR_REPEAT_HPP_INCLUDED williamr@4: #define BOOST_MPL_AUX_PREPROCESSOR_REPEAT_HPP_INCLUDED williamr@4: williamr@4: // Copyright Aleksey Gurtovoy 2002-2004 williamr@4: // williamr@4: // Distributed under the Boost Software License, Version 1.0. williamr@4: // (See accompanying file LICENSE_1_0.txt or copy at williamr@4: // http://www.boost.org/LICENSE_1_0.txt) williamr@4: // williamr@4: // See http://www.boost.org/libs/mpl for documentation. williamr@4: williamr@4: // $Source: /cvsroot/boost/boost/boost/mpl/aux_/preprocessor/repeat.hpp,v $ williamr@4: // $Date: 2004/09/02 15:40:56 $ williamr@4: // $Revision: 1.5 $ williamr@4: williamr@4: #include williamr@4: williamr@4: #if !defined(BOOST_MPL_CFG_NO_OWN_PP_PRIMITIVES) williamr@4: williamr@4: # include williamr@4: williamr@4: # define BOOST_MPL_PP_REPEAT(n,f,param) \ williamr@4: BOOST_PP_CAT(BOOST_MPL_PP_REPEAT_,n)(f,param) \ williamr@4: /**/ williamr@4: williamr@4: # define BOOST_MPL_PP_REPEAT_0(f,p) williamr@4: # define BOOST_MPL_PP_REPEAT_1(f,p) f(0,0,p) williamr@4: # define BOOST_MPL_PP_REPEAT_2(f,p) f(0,0,p) f(0,1,p) williamr@4: # define BOOST_MPL_PP_REPEAT_3(f,p) f(0,0,p) f(0,1,p) f(0,2,p) williamr@4: # define BOOST_MPL_PP_REPEAT_4(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) williamr@4: # define BOOST_MPL_PP_REPEAT_5(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) f(0,4,p) williamr@4: # define BOOST_MPL_PP_REPEAT_6(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) f(0,4,p) f(0,5,p) williamr@4: # define BOOST_MPL_PP_REPEAT_7(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) f(0,4,p) f(0,5,p) f(0,6,p) williamr@4: # define BOOST_MPL_PP_REPEAT_8(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) f(0,4,p) f(0,5,p) f(0,6,p) f(0,7,p) williamr@4: # define BOOST_MPL_PP_REPEAT_9(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) f(0,4,p) f(0,5,p) f(0,6,p) f(0,7,p) f(0,8,p) williamr@4: # define BOOST_MPL_PP_REPEAT_10(f,p) f(0,0,p) f(0,1,p) f(0,2,p) f(0,3,p) f(0,4,p) f(0,5,p) f(0,6,p) f(0,7,p) f(0,8,p) f(0,9,p) williamr@4: williamr@4: #else williamr@4: williamr@4: # include williamr@4: williamr@4: # define BOOST_MPL_PP_REPEAT(n,f,param) \ williamr@4: BOOST_PP_REPEAT(n,f,param) \ williamr@4: /**/ williamr@4: williamr@4: #endif williamr@4: williamr@4: #define BOOST_MPL_PP_REPEAT_IDENTITY_FUNC(unused1, unused2, x) x williamr@4: williamr@4: #endif // BOOST_MPL_AUX_PREPROCESSOR_REPEAT_HPP_INCLUDED