1 2 #ifndef BOOST_MPL_AUX_PREPROCESSOR_RANGE_HPP_INCLUDED 3 #define BOOST_MPL_AUX_PREPROCESSOR_RANGE_HPP_INCLUDED 4 5 // Copyright Aleksey Gurtovoy 2002-2004 6 // 7 // Distributed under the Boost Software License, Version 1.0. 8 // (See accompanying file LICENSE_1_0.txt or copy at 9 // http://www.boost.org/LICENSE_1_0.txt) 10 // 11 // See http://www.boost.org/libs/mpl for documentation. 12 13 // $Id$ 14 // $Date$ 15 // $Revision$ 16 17 #include <boost/preprocessor/seq/subseq.hpp> 18 #include <boost/preprocessor/repetition/repeat.hpp> 19 #include <boost/preprocessor/arithmetic/add.hpp> 20 21 #define BOOST_MPL_PP_RANGE_ITEM(z,n,_) (n) 22 23 #define BOOST_MPL_PP_RANGE(first, length) \ 24 BOOST_PP_SEQ_SUBSEQ( \ 25 BOOST_PP_REPEAT(BOOST_PP_ADD(first,length), BOOST_MPL_PP_RANGE_ITEM, _), \ 26 first, length \ 27 ) \ 28 /**/ 29 30 #endif // BOOST_MPL_AUX_PREPROCESSOR_RANGE_HPP_INCLUDED 31