blob: 06065f60e51e1fc3dbbf3151539535808a6addd9 [file] [log] [blame]
Jeff Thompsona28eed82013-08-22 16:21:10 -07001// Copyright 2005 Alexander Nasonov.
2// Distributed under the Boost Software License, Version 1.0. (See
3// accompanying file LICENSE_1_0.txt or copy at
4// http://www.boost.org/LICENSE_1_0.txt)
5
6#ifndef FILE_boost_type_traits_promote_hpp_INCLUDED
7#define FILE_boost_type_traits_promote_hpp_INCLUDED
8
9#include <ndnboost/config.hpp>
10#include <ndnboost/type_traits/integral_promotion.hpp>
11#include <ndnboost/type_traits/floating_point_promotion.hpp>
12
13// Should be the last #include
14#include <ndnboost/type_traits/detail/type_trait_def.hpp>
15
16namespace ndnboost {
17
18namespace detail {
19
20template<class T>
21struct promote_impl
22 : public integral_promotion<
23 BOOST_DEDUCED_TYPENAME floating_point_promotion<T>::type
24 >
25{
26};
27
28}
29
30BOOST_TT_AUX_TYPE_TRAIT_DEF1(
31 promote
32 , T
33 , BOOST_DEDUCED_TYPENAME ndnboost::detail::promote_impl<T>::type
34 )
35}
36
37#include <ndnboost/type_traits/detail/type_trait_undef.hpp>
38
39#endif // #ifndef FILE_boost_type_traits_promote_hpp_INCLUDED
40