Chris@16
|
1 // Boost.Function library
|
Chris@16
|
2
|
Chris@16
|
3 // Copyright Douglas Gregor 2001-2003. Use, modification and
|
Chris@16
|
4 // distribution is subject to the Boost Software License, Version
|
Chris@16
|
5 // 1.0. (See accompanying file LICENSE_1_0.txt or copy at
|
Chris@16
|
6 // http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
7
|
Chris@16
|
8 // For more information, see http://www.boost.org/libs/function
|
Chris@16
|
9
|
Chris@16
|
10 // William Kempf, Jesse Jones and Karl Nelson were all very helpful in the
|
Chris@16
|
11 // design of this library.
|
Chris@16
|
12
|
Chris@16
|
13 #include <functional> // unary_function, binary_function
|
Chris@16
|
14
|
Chris@16
|
15 #include <boost/preprocessor/iterate.hpp>
|
Chris@16
|
16 #include <boost/detail/workaround.hpp>
|
Chris@16
|
17
|
Chris@16
|
18 #ifndef BOOST_FUNCTION_MAX_ARGS
|
Chris@16
|
19 # define BOOST_FUNCTION_MAX_ARGS 10
|
Chris@16
|
20 #endif // BOOST_FUNCTION_MAX_ARGS
|
Chris@16
|
21
|
Chris@16
|
22 // Include the prologue here so that the use of file-level iteration
|
Chris@16
|
23 // in anything that may be included by function_template.hpp doesn't break
|
Chris@16
|
24 #include <boost/function/detail/prologue.hpp>
|
Chris@16
|
25
|
Chris@16
|
26 // Older Visual Age C++ version do not handle the file iteration well
|
Chris@16
|
27 #if BOOST_WORKAROUND(__IBMCPP__, >= 500) && BOOST_WORKAROUND(__IBMCPP__, < 800)
|
Chris@16
|
28 # if BOOST_FUNCTION_MAX_ARGS >= 0
|
Chris@16
|
29 # include <boost/function/function0.hpp>
|
Chris@16
|
30 # endif
|
Chris@16
|
31 # if BOOST_FUNCTION_MAX_ARGS >= 1
|
Chris@16
|
32 # include <boost/function/function1.hpp>
|
Chris@16
|
33 # endif
|
Chris@16
|
34 # if BOOST_FUNCTION_MAX_ARGS >= 2
|
Chris@16
|
35 # include <boost/function/function2.hpp>
|
Chris@16
|
36 # endif
|
Chris@16
|
37 # if BOOST_FUNCTION_MAX_ARGS >= 3
|
Chris@16
|
38 # include <boost/function/function3.hpp>
|
Chris@16
|
39 # endif
|
Chris@16
|
40 # if BOOST_FUNCTION_MAX_ARGS >= 4
|
Chris@16
|
41 # include <boost/function/function4.hpp>
|
Chris@16
|
42 # endif
|
Chris@16
|
43 # if BOOST_FUNCTION_MAX_ARGS >= 5
|
Chris@16
|
44 # include <boost/function/function5.hpp>
|
Chris@16
|
45 # endif
|
Chris@16
|
46 # if BOOST_FUNCTION_MAX_ARGS >= 6
|
Chris@16
|
47 # include <boost/function/function6.hpp>
|
Chris@16
|
48 # endif
|
Chris@16
|
49 # if BOOST_FUNCTION_MAX_ARGS >= 7
|
Chris@16
|
50 # include <boost/function/function7.hpp>
|
Chris@16
|
51 # endif
|
Chris@16
|
52 # if BOOST_FUNCTION_MAX_ARGS >= 8
|
Chris@16
|
53 # include <boost/function/function8.hpp>
|
Chris@16
|
54 # endif
|
Chris@16
|
55 # if BOOST_FUNCTION_MAX_ARGS >= 9
|
Chris@16
|
56 # include <boost/function/function9.hpp>
|
Chris@16
|
57 # endif
|
Chris@16
|
58 # if BOOST_FUNCTION_MAX_ARGS >= 10
|
Chris@16
|
59 # include <boost/function/function10.hpp>
|
Chris@16
|
60 # endif
|
Chris@16
|
61 #else
|
Chris@16
|
62 // What is the '3' for?
|
Chris@16
|
63 # define BOOST_PP_ITERATION_PARAMS_1 (3,(0,BOOST_FUNCTION_MAX_ARGS,<boost/function/detail/function_iterate.hpp>))
|
Chris@16
|
64 # include BOOST_PP_ITERATE()
|
Chris@16
|
65 # undef BOOST_PP_ITERATION_PARAMS_1
|
Chris@16
|
66 #endif
|