Warning, file /include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_long_long.hpp was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009 namespace boost { namespace numeric {
0010
0011
0012 template <>
0013 struct numeric_cast_traits
0014 <
0015 char
0016 , boost::long_long_type
0017 >
0018 {
0019 typedef def_overflow_handler overflow_policy;
0020 typedef UseInternalRangeChecker range_checking_policy;
0021 typedef Trunc<boost::long_long_type> rounding_policy;
0022 };
0023
0024 template <>
0025 struct numeric_cast_traits
0026 <
0027 char
0028 , boost::ulong_long_type
0029 >
0030 {
0031 typedef def_overflow_handler overflow_policy;
0032 typedef UseInternalRangeChecker range_checking_policy;
0033 typedef Trunc<boost::ulong_long_type> rounding_policy;
0034 };
0035
0036 template <>
0037 struct numeric_cast_traits
0038 <
0039 signed char
0040 , boost::long_long_type
0041 >
0042 {
0043 typedef def_overflow_handler overflow_policy;
0044 typedef UseInternalRangeChecker range_checking_policy;
0045 typedef Trunc<boost::long_long_type> rounding_policy;
0046 };
0047
0048 template <>
0049 struct numeric_cast_traits
0050 <
0051 signed char
0052 , boost::ulong_long_type
0053 >
0054 {
0055 typedef def_overflow_handler overflow_policy;
0056 typedef UseInternalRangeChecker range_checking_policy;
0057 typedef Trunc<boost::ulong_long_type> rounding_policy;
0058 };
0059
0060 template <>
0061 struct numeric_cast_traits
0062 <
0063 unsigned char
0064 , boost::long_long_type
0065 >
0066 {
0067 typedef def_overflow_handler overflow_policy;
0068 typedef UseInternalRangeChecker range_checking_policy;
0069 typedef Trunc<boost::long_long_type> rounding_policy;
0070 };
0071
0072 template <>
0073 struct numeric_cast_traits
0074 <
0075 unsigned char
0076 , boost::ulong_long_type
0077 >
0078 {
0079 typedef def_overflow_handler overflow_policy;
0080 typedef UseInternalRangeChecker range_checking_policy;
0081 typedef Trunc<boost::ulong_long_type> rounding_policy;
0082 };
0083
0084 template <>
0085 struct numeric_cast_traits
0086 <
0087 short
0088 , boost::long_long_type
0089 >
0090 {
0091 typedef def_overflow_handler overflow_policy;
0092 typedef UseInternalRangeChecker range_checking_policy;
0093 typedef Trunc<boost::long_long_type> rounding_policy;
0094 };
0095
0096 template <>
0097 struct numeric_cast_traits
0098 <
0099 short
0100 , boost::ulong_long_type
0101 >
0102 {
0103 typedef def_overflow_handler overflow_policy;
0104 typedef UseInternalRangeChecker range_checking_policy;
0105 typedef Trunc<boost::ulong_long_type> rounding_policy;
0106 };
0107
0108 template <>
0109 struct numeric_cast_traits
0110 <
0111 unsigned short
0112 , boost::long_long_type
0113 >
0114 {
0115 typedef def_overflow_handler overflow_policy;
0116 typedef UseInternalRangeChecker range_checking_policy;
0117 typedef Trunc<boost::long_long_type> rounding_policy;
0118 };
0119
0120 template <>
0121 struct numeric_cast_traits
0122 <
0123 unsigned short
0124 , boost::ulong_long_type
0125 >
0126 {
0127 typedef def_overflow_handler overflow_policy;
0128 typedef UseInternalRangeChecker range_checking_policy;
0129 typedef Trunc<boost::ulong_long_type> rounding_policy;
0130 };
0131
0132 template <>
0133 struct numeric_cast_traits
0134 <
0135 int
0136 , boost::long_long_type
0137 >
0138 {
0139 typedef def_overflow_handler overflow_policy;
0140 typedef UseInternalRangeChecker range_checking_policy;
0141 typedef Trunc<boost::long_long_type> rounding_policy;
0142 };
0143
0144 template <>
0145 struct numeric_cast_traits
0146 <
0147 int
0148 , boost::ulong_long_type
0149 >
0150 {
0151 typedef def_overflow_handler overflow_policy;
0152 typedef UseInternalRangeChecker range_checking_policy;
0153 typedef Trunc<boost::ulong_long_type> rounding_policy;
0154 };
0155
0156 template <>
0157 struct numeric_cast_traits
0158 <
0159 unsigned int
0160 , boost::long_long_type
0161 >
0162 {
0163 typedef def_overflow_handler overflow_policy;
0164 typedef UseInternalRangeChecker range_checking_policy;
0165 typedef Trunc<boost::long_long_type> rounding_policy;
0166 };
0167
0168 template <>
0169 struct numeric_cast_traits
0170 <
0171 unsigned int
0172 , boost::ulong_long_type
0173 >
0174 {
0175 typedef def_overflow_handler overflow_policy;
0176 typedef UseInternalRangeChecker range_checking_policy;
0177 typedef Trunc<boost::ulong_long_type> rounding_policy;
0178 };
0179
0180 template <>
0181 struct numeric_cast_traits
0182 <
0183 long
0184 , boost::long_long_type
0185 >
0186 {
0187 typedef def_overflow_handler overflow_policy;
0188 typedef UseInternalRangeChecker range_checking_policy;
0189 typedef Trunc<boost::long_long_type> rounding_policy;
0190 };
0191
0192 template <>
0193 struct numeric_cast_traits
0194 <
0195 long
0196 , boost::ulong_long_type
0197 >
0198 {
0199 typedef def_overflow_handler overflow_policy;
0200 typedef UseInternalRangeChecker range_checking_policy;
0201 typedef Trunc<boost::ulong_long_type> rounding_policy;
0202 };
0203
0204 template <>
0205 struct numeric_cast_traits
0206 <
0207 unsigned long
0208 , boost::long_long_type
0209 >
0210 {
0211 typedef def_overflow_handler overflow_policy;
0212 typedef UseInternalRangeChecker range_checking_policy;
0213 typedef Trunc<boost::long_long_type> rounding_policy;
0214 };
0215
0216 template <>
0217 struct numeric_cast_traits
0218 <
0219 unsigned long
0220 , boost::ulong_long_type
0221 >
0222 {
0223 typedef def_overflow_handler overflow_policy;
0224 typedef UseInternalRangeChecker range_checking_policy;
0225 typedef Trunc<boost::ulong_long_type> rounding_policy;
0226 };
0227
0228 template <>
0229 struct numeric_cast_traits
0230 <
0231 float
0232 , boost::long_long_type
0233 >
0234 {
0235 typedef def_overflow_handler overflow_policy;
0236 typedef UseInternalRangeChecker range_checking_policy;
0237 typedef Trunc<boost::long_long_type> rounding_policy;
0238 };
0239
0240 template <>
0241 struct numeric_cast_traits
0242 <
0243 float
0244 , boost::ulong_long_type
0245 >
0246 {
0247 typedef def_overflow_handler overflow_policy;
0248 typedef UseInternalRangeChecker range_checking_policy;
0249 typedef Trunc<boost::ulong_long_type> rounding_policy;
0250 };
0251
0252 template <>
0253 struct numeric_cast_traits
0254 <
0255 double
0256 , boost::long_long_type
0257 >
0258 {
0259 typedef def_overflow_handler overflow_policy;
0260 typedef UseInternalRangeChecker range_checking_policy;
0261 typedef Trunc<boost::long_long_type> rounding_policy;
0262 };
0263
0264 template <>
0265 struct numeric_cast_traits
0266 <
0267 double
0268 , boost::ulong_long_type
0269 >
0270 {
0271 typedef def_overflow_handler overflow_policy;
0272 typedef UseInternalRangeChecker range_checking_policy;
0273 typedef Trunc<boost::ulong_long_type> rounding_policy;
0274 };
0275
0276 template <>
0277 struct numeric_cast_traits
0278 <
0279 long double
0280 , boost::long_long_type
0281 >
0282 {
0283 typedef def_overflow_handler overflow_policy;
0284 typedef UseInternalRangeChecker range_checking_policy;
0285 typedef Trunc<boost::long_long_type> rounding_policy;
0286 };
0287
0288 template <>
0289 struct numeric_cast_traits
0290 <
0291 long double
0292 , boost::ulong_long_type
0293 >
0294 {
0295 typedef def_overflow_handler overflow_policy;
0296 typedef UseInternalRangeChecker range_checking_policy;
0297 typedef Trunc<boost::ulong_long_type> rounding_policy;
0298 };
0299
0300 template <>
0301 struct numeric_cast_traits
0302 <
0303 boost::long_long_type
0304 , boost::long_long_type
0305 >
0306 {
0307 typedef def_overflow_handler overflow_policy;
0308 typedef UseInternalRangeChecker range_checking_policy;
0309 typedef Trunc<boost::long_long_type> rounding_policy;
0310 };
0311
0312 template <>
0313 struct numeric_cast_traits
0314 <
0315 boost::long_long_type
0316 , boost::ulong_long_type
0317 >
0318 {
0319 typedef def_overflow_handler overflow_policy;
0320 typedef UseInternalRangeChecker range_checking_policy;
0321 typedef Trunc<boost::ulong_long_type> rounding_policy;
0322 };
0323
0324 template <>
0325 struct numeric_cast_traits
0326 <
0327 boost::ulong_long_type
0328 , boost::long_long_type
0329 >
0330 {
0331 typedef def_overflow_handler overflow_policy;
0332 typedef UseInternalRangeChecker range_checking_policy;
0333 typedef Trunc<boost::long_long_type> rounding_policy;
0334 };
0335
0336 template <>
0337 struct numeric_cast_traits
0338 <
0339 boost::ulong_long_type
0340 , boost::ulong_long_type
0341 >
0342 {
0343 typedef def_overflow_handler overflow_policy;
0344 typedef UseInternalRangeChecker range_checking_policy;
0345 typedef Trunc<boost::ulong_long_type> rounding_policy;
0346 };
0347 }}