#ifndef BOOST_PREPROCESSOR_DEC_HPP #define BOOST_PREPROCESSOR_DEC_HPP /* Copyright (C) 2001 * Housemarque Oy * http://www.housemarque.com * * Permission to copy, use, modify, sell and distribute this software is * granted provided this copyright notice appears in all copies. This * software is provided "as is" without express or implied warranty, and * with no claim as to its suitability for any purpose. * * See http://www.boost.org for most recent version. */ /**
Decrements X
expanding to a single token.
For example, BOOST_PP_DEC(3)
expands to 2
(a
single token).
BOOST_PP_DEC() uses saturation arithmetic. Decrementing 0 yeilds a 0.
Only decimal integer literals in the range [0,BOOST_PP_LIMIT_MAG] are supported.
*/ #define BOOST_PP_DEC(X) BOOST_PP_DEC_DELAY(X) #ifndef DOXYGEN_SHOULD_SKIP_THIS #define BOOST_PP_DEC_DELAY(X) BOOST_PP_DEC##X #define BOOST_PP_DEC0 0 #define BOOST_PP_DEC1 0 #define BOOST_PP_DEC2 1 #define BOOST_PP_DEC3 2 #define BOOST_PP_DEC4 3 #define BOOST_PP_DEC5 4 #define BOOST_PP_DEC6 5 #define BOOST_PP_DEC7 6 #define BOOST_PP_DEC8 7 #define BOOST_PP_DEC9 8 #define BOOST_PP_DEC10 9 #define BOOST_PP_DEC11 10 #define BOOST_PP_DEC12 11 #define BOOST_PP_DEC13 12 #define BOOST_PP_DEC14 13 #define BOOST_PP_DEC15 14 #define BOOST_PP_DEC16 15 #define BOOST_PP_DEC17 16 #define BOOST_PP_DEC18 17 #define BOOST_PP_DEC19 18 #define BOOST_PP_DEC20 19 #define BOOST_PP_DEC21 20 #define BOOST_PP_DEC22 21 #define BOOST_PP_DEC23 22 #define BOOST_PP_DEC24 23 #define BOOST_PP_DEC25 24 #define BOOST_PP_DEC26 25 #define BOOST_PP_DEC27 26 #define BOOST_PP_DEC28 27 #define BOOST_PP_DEC29 28 #define BOOST_PP_DEC30 29 #define BOOST_PP_DEC31 30 #define BOOST_PP_DEC32 31 #define BOOST_PP_DEC33 32 #define BOOST_PP_DEC34 33 #define BOOST_PP_DEC35 34 #define BOOST_PP_DEC36 35 #define BOOST_PP_DEC37 36 #define BOOST_PP_DEC38 37 #define BOOST_PP_DEC39 38 #define BOOST_PP_DEC40 39 #define BOOST_PP_DEC41 40 #define BOOST_PP_DEC42 41 #define BOOST_PP_DEC43 42 #define BOOST_PP_DEC44 43 #define BOOST_PP_DEC45 44 #define BOOST_PP_DEC46 45 #define BOOST_PP_DEC47 46 #define BOOST_PP_DEC48 47 #define BOOST_PP_DEC49 48 #define BOOST_PP_DEC50 49 #define BOOST_PP_DEC51 50 #define BOOST_PP_DEC52 51 #define BOOST_PP_DEC53 52 #define BOOST_PP_DEC54 53 #define BOOST_PP_DEC55 54 #define BOOST_PP_DEC56 55 #define BOOST_PP_DEC57 56 #define BOOST_PP_DEC58 57 #define BOOST_PP_DEC59 58 #define BOOST_PP_DEC60 59 #define BOOST_PP_DEC61 60 #define BOOST_PP_DEC62 61 #define BOOST_PP_DEC63 62 #define BOOST_PP_DEC64 63 #define BOOST_PP_DEC65 64 #define BOOST_PP_DEC66 65 #define BOOST_PP_DEC67 66 #define BOOST_PP_DEC68 67 #define BOOST_PP_DEC69 68 #define BOOST_PP_DEC70 69 #define BOOST_PP_DEC71 70 #define BOOST_PP_DEC72 71 #define BOOST_PP_DEC73 72 #define BOOST_PP_DEC74 73 #define BOOST_PP_DEC75 74 #define BOOST_PP_DEC76 75 #define BOOST_PP_DEC77 76 #define BOOST_PP_DEC78 77 #define BOOST_PP_DEC79 78 #define BOOST_PP_DEC80 79 #define BOOST_PP_DEC81 80 #define BOOST_PP_DEC82 81 #define BOOST_PP_DEC83 82 #define BOOST_PP_DEC84 83 #define BOOST_PP_DEC85 84 #define BOOST_PP_DEC86 85 #define BOOST_PP_DEC87 86 #define BOOST_PP_DEC88 87 #define BOOST_PP_DEC89 88 #define BOOST_PP_DEC90 89 #define BOOST_PP_DEC91 90 #define BOOST_PP_DEC92 91 #define BOOST_PP_DEC93 92 #define BOOST_PP_DEC94 93 #define BOOST_PP_DEC95 94 #define BOOST_PP_DEC96 95 #define BOOST_PP_DEC97 96 #define BOOST_PP_DEC98 97 #define BOOST_PP_DEC99 98 #define BOOST_PP_DEC100 99 #define BOOST_PP_DEC101 100 #define BOOST_PP_DEC102 101 #define BOOST_PP_DEC103 102 #define BOOST_PP_DEC104 103 #define BOOST_PP_DEC105 104 #define BOOST_PP_DEC106 105 #define BOOST_PP_DEC107 106 #define BOOST_PP_DEC108 107 #define BOOST_PP_DEC109 108 #define BOOST_PP_DEC110 109 #define BOOST_PP_DEC111 110 #define BOOST_PP_DEC112 111 #define BOOST_PP_DEC113 112 #define BOOST_PP_DEC114 113 #define BOOST_PP_DEC115 114 #define BOOST_PP_DEC116 115 #define BOOST_PP_DEC117 116 #define BOOST_PP_DEC118 117 #define BOOST_PP_DEC119 118 #define BOOST_PP_DEC120 119 #define BOOST_PP_DEC121 120 #define BOOST_PP_DEC122 121 #define BOOST_PP_DEC123 122 #define BOOST_PP_DEC124 123 #define BOOST_PP_DEC125 124 #define BOOST_PP_DEC126 125 #define BOOST_PP_DEC127 126 #define BOOST_PP_DEC128 127 #endif /**Obsolete. Use BOOST_PP_DEC().
*/ #define BOOST_PREPROCESSOR_DEC(X) BOOST_PP_DEC(X) #endif