1 //  numeric_cast.hpp
2 //
3 //  (C) Copyright 2011 Vicente J. Botet Escriba
4 //  Use, modification and distribution are subject to the Boost Software License,
5 //  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6 //  http://www.boost.org/LICENSE_1_0.txt).
7 //
8 
9 #ifndef BOOST_RATIO_MPL_NUMERIC_CAST_HPP
10 #define BOOST_RATIO_MPL_NUMERIC_CAST_HPP
11 
12 #include <boost/ratio/ratio.hpp>
13 #include <boost/mpl/integral_c.hpp>
14 #include <boost/ratio/mpl/rational_c_tag.hpp>
15 #include <boost/mpl/numeric_cast.hpp>
16 
17 namespace boost {
18 namespace mpl {
19 
20 template<> struct numeric_cast< integral_c_tag,rational_c_tag >
21 {
22     template< typename N > struct apply
23         : ratio< N::value, 1 >
24     {
25     };
26 };
27 
28 }
29 }
30 
31 #endif  // BOOST_RATIO_MPL_NUMERIC_CAST_HPP
32