1 # /* ************************************************************************** 2 # * * 3 # * (C) Copyright Paul Mensonides 2002. 4 # * Distributed under the Boost Software License, Version 1.0. (See 5 # * accompanying file LICENSE_1_0.txt or copy at 6 # * http://www.boost.org/LICENSE_1_0.txt) 7 # * * 8 # ************************************************************************** */ 9 # 10 # /* See http://www.boost.org for most recent version. */ 11 # 12 # include <boost/preprocessor/slot/detail/shared.hpp> 13 # 14 # undef BOOST_PP_ITERATION_FINISH_1 15 # 16 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_1 17 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_2 18 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_3 19 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_4 20 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_5 21 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_6 22 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_7 23 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_8 24 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_9 25 # undef BOOST_PP_ITERATION_FINISH_1_DIGIT_10 26 # 27 # if BOOST_PP_SLOT_TEMP_3 == 0 28 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 0 29 # elif BOOST_PP_SLOT_TEMP_3 == 1 30 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 1 31 # elif BOOST_PP_SLOT_TEMP_3 == 2 32 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 2 33 # elif BOOST_PP_SLOT_TEMP_3 == 3 34 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 3 35 # elif BOOST_PP_SLOT_TEMP_3 == 4 36 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 4 37 # elif BOOST_PP_SLOT_TEMP_3 == 5 38 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 5 39 # elif BOOST_PP_SLOT_TEMP_3 == 6 40 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 6 41 # elif BOOST_PP_SLOT_TEMP_3 == 7 42 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 7 43 # elif BOOST_PP_SLOT_TEMP_3 == 8 44 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 8 45 # elif BOOST_PP_SLOT_TEMP_3 == 9 46 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 9 47 # endif 48 # 49 # if BOOST_PP_SLOT_TEMP_2 == 0 50 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 0 51 # elif BOOST_PP_SLOT_TEMP_2 == 1 52 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 1 53 # elif BOOST_PP_SLOT_TEMP_2 == 2 54 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 2 55 # elif BOOST_PP_SLOT_TEMP_2 == 3 56 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 3 57 # elif BOOST_PP_SLOT_TEMP_2 == 4 58 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 4 59 # elif BOOST_PP_SLOT_TEMP_2 == 5 60 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 5 61 # elif BOOST_PP_SLOT_TEMP_2 == 6 62 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 6 63 # elif BOOST_PP_SLOT_TEMP_2 == 7 64 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 7 65 # elif BOOST_PP_SLOT_TEMP_2 == 8 66 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 8 67 # elif BOOST_PP_SLOT_TEMP_2 == 9 68 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 9 69 # endif 70 # 71 # if BOOST_PP_SLOT_TEMP_1 == 0 72 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 0 73 # elif BOOST_PP_SLOT_TEMP_1 == 1 74 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 1 75 # elif BOOST_PP_SLOT_TEMP_1 == 2 76 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 2 77 # elif BOOST_PP_SLOT_TEMP_1 == 3 78 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 3 79 # elif BOOST_PP_SLOT_TEMP_1 == 4 80 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 4 81 # elif BOOST_PP_SLOT_TEMP_1 == 5 82 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 5 83 # elif BOOST_PP_SLOT_TEMP_1 == 6 84 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 6 85 # elif BOOST_PP_SLOT_TEMP_1 == 7 86 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 7 87 # elif BOOST_PP_SLOT_TEMP_1 == 8 88 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 8 89 # elif BOOST_PP_SLOT_TEMP_1 == 9 90 # define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 9 91 # endif 92 # 93 # if BOOST_PP_ITERATION_FINISH_1_DIGIT_3 94 # define BOOST_PP_ITERATION_FINISH_1 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_FINISH_1_DIGIT_3, BOOST_PP_ITERATION_FINISH_1_DIGIT_2, BOOST_PP_ITERATION_FINISH_1_DIGIT_1) 95 # elif BOOST_PP_ITERATION_FINISH_1_DIGIT_2 96 # define BOOST_PP_ITERATION_FINISH_1 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_FINISH_1_DIGIT_2, BOOST_PP_ITERATION_FINISH_1_DIGIT_1) 97 # else 98 # define BOOST_PP_ITERATION_FINISH_1 BOOST_PP_ITERATION_FINISH_1_DIGIT_1 99 # endif 100