Imported Upstream version 1.49.0
[platform/upstream/boost.git] / boost / mpl / map / aux_ / include_preprocessed.hpp
1
2 // Copyright Aleksey Gurtovoy 2001-2004
3 //
4 // Distributed under the Boost Software License, Version 1.0. 
5 // (See accompanying file LICENSE_1_0.txt or copy at 
6 // http://www.boost.org/LICENSE_1_0.txt)
7 //
8 // See http://www.boost.org/libs/mpl for documentation.
9
10 // $Id: include_preprocessed.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
11 // $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
12 // $Revision: 49267 $
13
14 // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION!
15
16 #include <boost/mpl/aux_/config/typeof.hpp>
17 #include <boost/mpl/aux_/config/ctps.hpp>
18 #include <boost/mpl/aux_/config/preprocessor.hpp>
19 #include <boost/mpl/aux_/config/workaround.hpp>
20
21 #include <boost/preprocessor/cat.hpp>
22 #include <boost/preprocessor/stringize.hpp>
23
24 #if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
25 #   define AUX778076_INCLUDE_DIR typeof_based
26 #elif defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
27 #   define AUX778076_INCLUDE_DIR no_ctps
28 #else
29 #   define AUX778076_INCLUDE_DIR plain
30 #endif
31
32 #if !defined(BOOST_NEEDS_TOKEN_PASTING_OP_FOR_TOKENS_JUXTAPOSING)
33 #   define AUX778076_HEADER \
34     AUX778076_INCLUDE_DIR/BOOST_MPL_PREPROCESSED_HEADER \
35 /**/
36 #else
37 #   define AUX778076_HEADER \
38     BOOST_PP_CAT(AUX778076_INCLUDE_DIR,/)##BOOST_MPL_PREPROCESSED_HEADER \
39 /**/
40 #endif
41
42 #if BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(700))
43 #   define AUX778076_INCLUDE_STRING BOOST_PP_STRINGIZE(boost/mpl/map/aux_/preprocessed/AUX778076_HEADER)
44 #   include AUX778076_INCLUDE_STRING
45 #   undef AUX778076_INCLUDE_STRING
46 #else
47 #   include BOOST_PP_STRINGIZE(boost/mpl/map/aux_/preprocessed/AUX778076_HEADER)
48 #endif
49
50 #   undef AUX778076_HEADER
51 #   undef AUX778076_INCLUDE_DIR
52
53 #undef BOOST_MPL_PREPROCESSED_HEADER