1 // Boost.Function library - Typeof support
2 // Copyright (C) Douglas Gregor 2008
4 // Use, modification and distribution is subject to the Boost
5 // Software License, Version 1.0. (See accompanying file
6 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
8 // For more information, see http://www.boost.org
9 #ifndef BOOST_FUNCTION_TYPEOF_HPP
10 #define BOOST_FUNCTION_TYPEOF_HPP
11 #include <boost/function/function_fwd.hpp>
12 #include <boost/typeof/typeof.hpp>
14 #include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP()
16 BOOST_TYPEOF_REGISTER_TYPE(boost::bad_function_call
)
18 #if !defined(BOOST_FUNCTION_NO_FUNCTION_TYPE_SYNTAX)
19 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function
, (typename
))
22 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function0
, (typename
))
23 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function1
, (typename
)(typename
))
24 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function2
, (typename
)(typename
)(typename
))
25 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function3
,
26 (typename
)(typename
)(typename
)(typename
))
27 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function4
,
28 (typename
)(typename
)(typename
)(typename
)(typename
))
29 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function5
,
30 (typename
)(typename
)(typename
)(typename
)(typename
)(typename
))
31 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function6
,
32 (typename
)(typename
)(typename
)(typename
)(typename
)(typename
)(typename
))
33 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function7
,
34 (typename
)(typename
)(typename
)(typename
)(typename
)(typename
)(typename
)
36 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function8
,
37 (typename
)(typename
)(typename
)(typename
)(typename
)(typename
)(typename
)
39 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function9
,
40 (typename
)(typename
)(typename
)(typename
)(typename
)(typename
)(typename
)
41 (typename
)(typename
)(typename
))
42 BOOST_TYPEOF_REGISTER_TEMPLATE(boost::function10
,
43 (typename
)(typename
)(typename
)(typename
)(typename
)(typename
)(typename
)
44 (typename
)(typename
)(typename
)(typename
))