1 
2 //  (C) Copyright Edward Diener 2012,2013
3 //  Use, modification and distribution are subject to the Boost Software License,
4 //  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
5 //  http://www.boost.org/LICENSE_1_0.txt).
6 
7 #if !defined(BOOST_TTI_DETAIL_FTCLASS_HPP)
8 #define BOOST_TTI_DETAIL_FTCLASS_HPP
9 
10 #include <boost/function_types/parameter_types.hpp>
11 #include <boost/mpl/at.hpp>
12 #include <boost/mpl/identity.hpp>
13 #include <boost/mpl/int.hpp>
14 #include <boost/mpl/quote.hpp>
15 
16 namespace boost
17   {
18   namespace tti
19     {
20     namespace detail
21       {
22       template<class BOOST_TTI_DETAIL_TP_F>
23       struct class_type :
24           boost::mpl::at
25             <
26             typename
27             boost::function_types::parameter_types
28               <
29               BOOST_TTI_DETAIL_TP_F,
30               boost::mpl::quote1
31                 <
32                 boost::mpl::identity
33                 >
34               >::type,
35               boost::mpl::int_<0>
36             >
37         {
38         };
39       }
40     }
41   }
42 
43 #endif // BOOST_TTI_DETAIL_FTCLASS_HPP
44