Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/mpl/set/aux_/numbered_c.hpp @ 16:2665513ce2d3
Add boost headers
author | Chris Cannam |
---|---|
date | Tue, 05 Aug 2014 11:11:38 +0100 |
parents | |
children | c530137014c0 |
comparison
equal
deleted
inserted
replaced
15:663ca0da4350 | 16:2665513ce2d3 |
---|---|
1 | |
2 // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION | |
3 | |
4 #if defined(BOOST_PP_IS_ITERATING) | |
5 | |
6 // Copyright Aleksey Gurtovoy 2000-2004 | |
7 // | |
8 // Distributed under the Boost Software License, Version 1.0. | |
9 // (See accompanying file LICENSE_1_0.txt or copy at | |
10 // http://www.boost.org/LICENSE_1_0.txt) | |
11 // | |
12 // See http://www.boost.org/libs/mpl for documentation. | |
13 | |
14 // $Id: numbered_c.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ | |
15 // $Date: 2008-10-10 23:19:02 -0700 (Fri, 10 Oct 2008) $ | |
16 // $Revision: 49267 $ | |
17 | |
18 #include <boost/preprocessor/repetition/enum_params.hpp> | |
19 #include <boost/preprocessor/repetition/enum_trailing_params.hpp> | |
20 #include <boost/preprocessor/dec.hpp> | |
21 #include <boost/preprocessor/cat.hpp> | |
22 | |
23 #define i_ BOOST_PP_FRAME_ITERATION(1) | |
24 | |
25 # define AUX778076_SET_C_TAIL(set, i_, T, C) \ | |
26 BOOST_PP_CAT(BOOST_PP_CAT(set,i_),_c)< \ | |
27 T BOOST_PP_ENUM_TRAILING_PARAMS(i_, C) \ | |
28 > \ | |
29 /**/ | |
30 | |
31 template< | |
32 typename T | |
33 , BOOST_PP_ENUM_PARAMS(i_, T C) | |
34 > | |
35 struct BOOST_PP_CAT(BOOST_PP_CAT(set,i_),_c) | |
36 : s_item< | |
37 integral_c<T,BOOST_PP_CAT(C,BOOST_PP_DEC(i_))> | |
38 , AUX778076_SET_C_TAIL(set,BOOST_PP_DEC(i_), T, C) | |
39 > | |
40 { | |
41 typedef BOOST_PP_CAT(BOOST_PP_CAT(set,i_),_c) type; | |
42 }; | |
43 | |
44 # undef AUX778076_SET_C_TAIL | |
45 | |
46 #undef i_ | |
47 | |
48 #endif // BOOST_PP_IS_ITERATING |