boost/numeric/conversion/detail/preprocessed/numeric_cast_traits.hpp
//
//! Copyright (c) 2011
//! Brandon Kohn
//
// Distributed under the Boost Software License, Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
//
namespace boost { namespace numeric {
template <>
struct numeric_cast_traits
<
char
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
char
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int8_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint8_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int16_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint16_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int32_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint32_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::int64_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
boost::uint64_t
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
float
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
double
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, char
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<char> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::int8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::uint8_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint8_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::int16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::uint16_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint16_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::int32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::uint32_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint32_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::int64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::int64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, boost::uint64_t
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<boost::uint64_t> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, float
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<float> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<double> rounding_policy;
};
template <>
struct numeric_cast_traits
<
long double
, long double
>
{
typedef def_overflow_handler overflow_policy;
typedef UseInternalRangeChecker range_checking_policy;
typedef Trunc<long double> rounding_policy;
};
}}