2 //! Copyright (c) 2011-2012
5 // Distributed under the Boost Software License, Version 1.0. (See
6 // accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
12 namespace boost { namespace numeric {
15 struct numeric_cast_traits
21 typedef def_overflow_handler overflow_policy;
22 typedef UseInternalRangeChecker range_checking_policy;
23 typedef Trunc<char> rounding_policy;
27 struct numeric_cast_traits
33 typedef def_overflow_handler overflow_policy;
34 typedef UseInternalRangeChecker range_checking_policy;
35 typedef Trunc<signed char> rounding_policy;
39 struct numeric_cast_traits
45 typedef def_overflow_handler overflow_policy;
46 typedef UseInternalRangeChecker range_checking_policy;
47 typedef Trunc<unsigned char> rounding_policy;
51 struct numeric_cast_traits
57 typedef def_overflow_handler overflow_policy;
58 typedef UseInternalRangeChecker range_checking_policy;
59 typedef Trunc<short> rounding_policy;
63 struct numeric_cast_traits
69 typedef def_overflow_handler overflow_policy;
70 typedef UseInternalRangeChecker range_checking_policy;
71 typedef Trunc<unsigned short> rounding_policy;
75 struct numeric_cast_traits
81 typedef def_overflow_handler overflow_policy;
82 typedef UseInternalRangeChecker range_checking_policy;
83 typedef Trunc<int> rounding_policy;
87 struct numeric_cast_traits
93 typedef def_overflow_handler overflow_policy;
94 typedef UseInternalRangeChecker range_checking_policy;
95 typedef Trunc<unsigned int> rounding_policy;
99 struct numeric_cast_traits
105 typedef def_overflow_handler overflow_policy;
106 typedef UseInternalRangeChecker range_checking_policy;
107 typedef Trunc<long> rounding_policy;
111 struct numeric_cast_traits
117 typedef def_overflow_handler overflow_policy;
118 typedef UseInternalRangeChecker range_checking_policy;
119 typedef Trunc<unsigned long> rounding_policy;
123 struct numeric_cast_traits
129 typedef def_overflow_handler overflow_policy;
130 typedef UseInternalRangeChecker range_checking_policy;
131 typedef Trunc<float> rounding_policy;
135 struct numeric_cast_traits
141 typedef def_overflow_handler overflow_policy;
142 typedef UseInternalRangeChecker range_checking_policy;
143 typedef Trunc<double> rounding_policy;
147 struct numeric_cast_traits
153 typedef def_overflow_handler overflow_policy;
154 typedef UseInternalRangeChecker range_checking_policy;
155 typedef Trunc<long double> rounding_policy;
159 struct numeric_cast_traits
165 typedef def_overflow_handler overflow_policy;
166 typedef UseInternalRangeChecker range_checking_policy;
167 typedef Trunc<char> rounding_policy;
171 struct numeric_cast_traits
177 typedef def_overflow_handler overflow_policy;
178 typedef UseInternalRangeChecker range_checking_policy;
179 typedef Trunc<signed char> rounding_policy;
183 struct numeric_cast_traits
189 typedef def_overflow_handler overflow_policy;
190 typedef UseInternalRangeChecker range_checking_policy;
191 typedef Trunc<unsigned char> rounding_policy;
195 struct numeric_cast_traits
201 typedef def_overflow_handler overflow_policy;
202 typedef UseInternalRangeChecker range_checking_policy;
203 typedef Trunc<short> rounding_policy;
207 struct numeric_cast_traits
213 typedef def_overflow_handler overflow_policy;
214 typedef UseInternalRangeChecker range_checking_policy;
215 typedef Trunc<unsigned short> rounding_policy;
219 struct numeric_cast_traits
225 typedef def_overflow_handler overflow_policy;
226 typedef UseInternalRangeChecker range_checking_policy;
227 typedef Trunc<int> rounding_policy;
231 struct numeric_cast_traits
237 typedef def_overflow_handler overflow_policy;
238 typedef UseInternalRangeChecker range_checking_policy;
239 typedef Trunc<unsigned int> rounding_policy;
243 struct numeric_cast_traits
249 typedef def_overflow_handler overflow_policy;
250 typedef UseInternalRangeChecker range_checking_policy;
251 typedef Trunc<long> rounding_policy;
255 struct numeric_cast_traits
261 typedef def_overflow_handler overflow_policy;
262 typedef UseInternalRangeChecker range_checking_policy;
263 typedef Trunc<unsigned long> rounding_policy;
267 struct numeric_cast_traits
273 typedef def_overflow_handler overflow_policy;
274 typedef UseInternalRangeChecker range_checking_policy;
275 typedef Trunc<float> rounding_policy;
279 struct numeric_cast_traits
285 typedef def_overflow_handler overflow_policy;
286 typedef UseInternalRangeChecker range_checking_policy;
287 typedef Trunc<double> rounding_policy;
291 struct numeric_cast_traits
297 typedef def_overflow_handler overflow_policy;
298 typedef UseInternalRangeChecker range_checking_policy;
299 typedef Trunc<long double> rounding_policy;
303 struct numeric_cast_traits
309 typedef def_overflow_handler overflow_policy;
310 typedef UseInternalRangeChecker range_checking_policy;
311 typedef Trunc<char> rounding_policy;
315 struct numeric_cast_traits
321 typedef def_overflow_handler overflow_policy;
322 typedef UseInternalRangeChecker range_checking_policy;
323 typedef Trunc<signed char> rounding_policy;
327 struct numeric_cast_traits
333 typedef def_overflow_handler overflow_policy;
334 typedef UseInternalRangeChecker range_checking_policy;
335 typedef Trunc<unsigned char> rounding_policy;
339 struct numeric_cast_traits
345 typedef def_overflow_handler overflow_policy;
346 typedef UseInternalRangeChecker range_checking_policy;
347 typedef Trunc<short> rounding_policy;
351 struct numeric_cast_traits
357 typedef def_overflow_handler overflow_policy;
358 typedef UseInternalRangeChecker range_checking_policy;
359 typedef Trunc<unsigned short> rounding_policy;
363 struct numeric_cast_traits
369 typedef def_overflow_handler overflow_policy;
370 typedef UseInternalRangeChecker range_checking_policy;
371 typedef Trunc<int> rounding_policy;
375 struct numeric_cast_traits
381 typedef def_overflow_handler overflow_policy;
382 typedef UseInternalRangeChecker range_checking_policy;
383 typedef Trunc<unsigned int> rounding_policy;
387 struct numeric_cast_traits
393 typedef def_overflow_handler overflow_policy;
394 typedef UseInternalRangeChecker range_checking_policy;
395 typedef Trunc<long> rounding_policy;
399 struct numeric_cast_traits
405 typedef def_overflow_handler overflow_policy;
406 typedef UseInternalRangeChecker range_checking_policy;
407 typedef Trunc<unsigned long> rounding_policy;
411 struct numeric_cast_traits
417 typedef def_overflow_handler overflow_policy;
418 typedef UseInternalRangeChecker range_checking_policy;
419 typedef Trunc<float> rounding_policy;
423 struct numeric_cast_traits
429 typedef def_overflow_handler overflow_policy;
430 typedef UseInternalRangeChecker range_checking_policy;
431 typedef Trunc<double> rounding_policy;
435 struct numeric_cast_traits
441 typedef def_overflow_handler overflow_policy;
442 typedef UseInternalRangeChecker range_checking_policy;
443 typedef Trunc<long double> rounding_policy;
447 struct numeric_cast_traits
453 typedef def_overflow_handler overflow_policy;
454 typedef UseInternalRangeChecker range_checking_policy;
455 typedef Trunc<char> rounding_policy;
459 struct numeric_cast_traits
465 typedef def_overflow_handler overflow_policy;
466 typedef UseInternalRangeChecker range_checking_policy;
467 typedef Trunc<signed char> rounding_policy;
471 struct numeric_cast_traits
477 typedef def_overflow_handler overflow_policy;
478 typedef UseInternalRangeChecker range_checking_policy;
479 typedef Trunc<unsigned char> rounding_policy;
483 struct numeric_cast_traits
489 typedef def_overflow_handler overflow_policy;
490 typedef UseInternalRangeChecker range_checking_policy;
491 typedef Trunc<short> rounding_policy;
495 struct numeric_cast_traits
501 typedef def_overflow_handler overflow_policy;
502 typedef UseInternalRangeChecker range_checking_policy;
503 typedef Trunc<unsigned short> rounding_policy;
507 struct numeric_cast_traits
513 typedef def_overflow_handler overflow_policy;
514 typedef UseInternalRangeChecker range_checking_policy;
515 typedef Trunc<int> rounding_policy;
519 struct numeric_cast_traits
525 typedef def_overflow_handler overflow_policy;
526 typedef UseInternalRangeChecker range_checking_policy;
527 typedef Trunc<unsigned int> rounding_policy;
531 struct numeric_cast_traits
537 typedef def_overflow_handler overflow_policy;
538 typedef UseInternalRangeChecker range_checking_policy;
539 typedef Trunc<long> rounding_policy;
543 struct numeric_cast_traits
549 typedef def_overflow_handler overflow_policy;
550 typedef UseInternalRangeChecker range_checking_policy;
551 typedef Trunc<unsigned long> rounding_policy;
555 struct numeric_cast_traits
561 typedef def_overflow_handler overflow_policy;
562 typedef UseInternalRangeChecker range_checking_policy;
563 typedef Trunc<float> rounding_policy;
567 struct numeric_cast_traits
573 typedef def_overflow_handler overflow_policy;
574 typedef UseInternalRangeChecker range_checking_policy;
575 typedef Trunc<double> rounding_policy;
579 struct numeric_cast_traits
585 typedef def_overflow_handler overflow_policy;
586 typedef UseInternalRangeChecker range_checking_policy;
587 typedef Trunc<long double> rounding_policy;
591 struct numeric_cast_traits
597 typedef def_overflow_handler overflow_policy;
598 typedef UseInternalRangeChecker range_checking_policy;
599 typedef Trunc<char> rounding_policy;
603 struct numeric_cast_traits
609 typedef def_overflow_handler overflow_policy;
610 typedef UseInternalRangeChecker range_checking_policy;
611 typedef Trunc<signed char> rounding_policy;
615 struct numeric_cast_traits
621 typedef def_overflow_handler overflow_policy;
622 typedef UseInternalRangeChecker range_checking_policy;
623 typedef Trunc<unsigned char> rounding_policy;
627 struct numeric_cast_traits
633 typedef def_overflow_handler overflow_policy;
634 typedef UseInternalRangeChecker range_checking_policy;
635 typedef Trunc<short> rounding_policy;
639 struct numeric_cast_traits
645 typedef def_overflow_handler overflow_policy;
646 typedef UseInternalRangeChecker range_checking_policy;
647 typedef Trunc<unsigned short> rounding_policy;
651 struct numeric_cast_traits
657 typedef def_overflow_handler overflow_policy;
658 typedef UseInternalRangeChecker range_checking_policy;
659 typedef Trunc<int> rounding_policy;
663 struct numeric_cast_traits
669 typedef def_overflow_handler overflow_policy;
670 typedef UseInternalRangeChecker range_checking_policy;
671 typedef Trunc<unsigned int> rounding_policy;
675 struct numeric_cast_traits
681 typedef def_overflow_handler overflow_policy;
682 typedef UseInternalRangeChecker range_checking_policy;
683 typedef Trunc<long> rounding_policy;
687 struct numeric_cast_traits
693 typedef def_overflow_handler overflow_policy;
694 typedef UseInternalRangeChecker range_checking_policy;
695 typedef Trunc<unsigned long> rounding_policy;
699 struct numeric_cast_traits
705 typedef def_overflow_handler overflow_policy;
706 typedef UseInternalRangeChecker range_checking_policy;
707 typedef Trunc<float> rounding_policy;
711 struct numeric_cast_traits
717 typedef def_overflow_handler overflow_policy;
718 typedef UseInternalRangeChecker range_checking_policy;
719 typedef Trunc<double> rounding_policy;
723 struct numeric_cast_traits
729 typedef def_overflow_handler overflow_policy;
730 typedef UseInternalRangeChecker range_checking_policy;
731 typedef Trunc<long double> rounding_policy;
735 struct numeric_cast_traits
741 typedef def_overflow_handler overflow_policy;
742 typedef UseInternalRangeChecker range_checking_policy;
743 typedef Trunc<char> rounding_policy;
747 struct numeric_cast_traits
753 typedef def_overflow_handler overflow_policy;
754 typedef UseInternalRangeChecker range_checking_policy;
755 typedef Trunc<signed char> rounding_policy;
759 struct numeric_cast_traits
765 typedef def_overflow_handler overflow_policy;
766 typedef UseInternalRangeChecker range_checking_policy;
767 typedef Trunc<unsigned char> rounding_policy;
771 struct numeric_cast_traits
777 typedef def_overflow_handler overflow_policy;
778 typedef UseInternalRangeChecker range_checking_policy;
779 typedef Trunc<short> rounding_policy;
783 struct numeric_cast_traits
789 typedef def_overflow_handler overflow_policy;
790 typedef UseInternalRangeChecker range_checking_policy;
791 typedef Trunc<unsigned short> rounding_policy;
795 struct numeric_cast_traits
801 typedef def_overflow_handler overflow_policy;
802 typedef UseInternalRangeChecker range_checking_policy;
803 typedef Trunc<int> rounding_policy;
807 struct numeric_cast_traits
813 typedef def_overflow_handler overflow_policy;
814 typedef UseInternalRangeChecker range_checking_policy;
815 typedef Trunc<unsigned int> rounding_policy;
819 struct numeric_cast_traits
825 typedef def_overflow_handler overflow_policy;
826 typedef UseInternalRangeChecker range_checking_policy;
827 typedef Trunc<long> rounding_policy;
831 struct numeric_cast_traits
837 typedef def_overflow_handler overflow_policy;
838 typedef UseInternalRangeChecker range_checking_policy;
839 typedef Trunc<unsigned long> rounding_policy;
843 struct numeric_cast_traits
849 typedef def_overflow_handler overflow_policy;
850 typedef UseInternalRangeChecker range_checking_policy;
851 typedef Trunc<float> rounding_policy;
855 struct numeric_cast_traits
861 typedef def_overflow_handler overflow_policy;
862 typedef UseInternalRangeChecker range_checking_policy;
863 typedef Trunc<double> rounding_policy;
867 struct numeric_cast_traits
873 typedef def_overflow_handler overflow_policy;
874 typedef UseInternalRangeChecker range_checking_policy;
875 typedef Trunc<long double> rounding_policy;
879 struct numeric_cast_traits
885 typedef def_overflow_handler overflow_policy;
886 typedef UseInternalRangeChecker range_checking_policy;
887 typedef Trunc<char> rounding_policy;
891 struct numeric_cast_traits
897 typedef def_overflow_handler overflow_policy;
898 typedef UseInternalRangeChecker range_checking_policy;
899 typedef Trunc<signed char> rounding_policy;
903 struct numeric_cast_traits
909 typedef def_overflow_handler overflow_policy;
910 typedef UseInternalRangeChecker range_checking_policy;
911 typedef Trunc<unsigned char> rounding_policy;
915 struct numeric_cast_traits
921 typedef def_overflow_handler overflow_policy;
922 typedef UseInternalRangeChecker range_checking_policy;
923 typedef Trunc<short> rounding_policy;
927 struct numeric_cast_traits
933 typedef def_overflow_handler overflow_policy;
934 typedef UseInternalRangeChecker range_checking_policy;
935 typedef Trunc<unsigned short> rounding_policy;
939 struct numeric_cast_traits
945 typedef def_overflow_handler overflow_policy;
946 typedef UseInternalRangeChecker range_checking_policy;
947 typedef Trunc<int> rounding_policy;
951 struct numeric_cast_traits
957 typedef def_overflow_handler overflow_policy;
958 typedef UseInternalRangeChecker range_checking_policy;
959 typedef Trunc<unsigned int> rounding_policy;
963 struct numeric_cast_traits
969 typedef def_overflow_handler overflow_policy;
970 typedef UseInternalRangeChecker range_checking_policy;
971 typedef Trunc<long> rounding_policy;
975 struct numeric_cast_traits
981 typedef def_overflow_handler overflow_policy;
982 typedef UseInternalRangeChecker range_checking_policy;
983 typedef Trunc<unsigned long> rounding_policy;
987 struct numeric_cast_traits
993 typedef def_overflow_handler overflow_policy;
994 typedef UseInternalRangeChecker range_checking_policy;
995 typedef Trunc<float> rounding_policy;
999 struct numeric_cast_traits
1005 typedef def_overflow_handler overflow_policy;
1006 typedef UseInternalRangeChecker range_checking_policy;
1007 typedef Trunc<double> rounding_policy;
1011 struct numeric_cast_traits
1017 typedef def_overflow_handler overflow_policy;
1018 typedef UseInternalRangeChecker range_checking_policy;
1019 typedef Trunc<long double> rounding_policy;
1023 struct numeric_cast_traits
1029 typedef def_overflow_handler overflow_policy;
1030 typedef UseInternalRangeChecker range_checking_policy;
1031 typedef Trunc<char> rounding_policy;
1035 struct numeric_cast_traits
1041 typedef def_overflow_handler overflow_policy;
1042 typedef UseInternalRangeChecker range_checking_policy;
1043 typedef Trunc<signed char> rounding_policy;
1047 struct numeric_cast_traits
1053 typedef def_overflow_handler overflow_policy;
1054 typedef UseInternalRangeChecker range_checking_policy;
1055 typedef Trunc<unsigned char> rounding_policy;
1059 struct numeric_cast_traits
1065 typedef def_overflow_handler overflow_policy;
1066 typedef UseInternalRangeChecker range_checking_policy;
1067 typedef Trunc<short> rounding_policy;
1071 struct numeric_cast_traits
1077 typedef def_overflow_handler overflow_policy;
1078 typedef UseInternalRangeChecker range_checking_policy;
1079 typedef Trunc<unsigned short> rounding_policy;
1083 struct numeric_cast_traits
1089 typedef def_overflow_handler overflow_policy;
1090 typedef UseInternalRangeChecker range_checking_policy;
1091 typedef Trunc<int> rounding_policy;
1095 struct numeric_cast_traits
1101 typedef def_overflow_handler overflow_policy;
1102 typedef UseInternalRangeChecker range_checking_policy;
1103 typedef Trunc<unsigned int> rounding_policy;
1107 struct numeric_cast_traits
1113 typedef def_overflow_handler overflow_policy;
1114 typedef UseInternalRangeChecker range_checking_policy;
1115 typedef Trunc<long> rounding_policy;
1119 struct numeric_cast_traits
1125 typedef def_overflow_handler overflow_policy;
1126 typedef UseInternalRangeChecker range_checking_policy;
1127 typedef Trunc<unsigned long> rounding_policy;
1131 struct numeric_cast_traits
1137 typedef def_overflow_handler overflow_policy;
1138 typedef UseInternalRangeChecker range_checking_policy;
1139 typedef Trunc<float> rounding_policy;
1143 struct numeric_cast_traits
1149 typedef def_overflow_handler overflow_policy;
1150 typedef UseInternalRangeChecker range_checking_policy;
1151 typedef Trunc<double> rounding_policy;
1155 struct numeric_cast_traits
1161 typedef def_overflow_handler overflow_policy;
1162 typedef UseInternalRangeChecker range_checking_policy;
1163 typedef Trunc<long double> rounding_policy;
1167 struct numeric_cast_traits
1173 typedef def_overflow_handler overflow_policy;
1174 typedef UseInternalRangeChecker range_checking_policy;
1175 typedef Trunc<char> rounding_policy;
1179 struct numeric_cast_traits
1185 typedef def_overflow_handler overflow_policy;
1186 typedef UseInternalRangeChecker range_checking_policy;
1187 typedef Trunc<signed char> rounding_policy;
1191 struct numeric_cast_traits
1197 typedef def_overflow_handler overflow_policy;
1198 typedef UseInternalRangeChecker range_checking_policy;
1199 typedef Trunc<unsigned char> rounding_policy;
1203 struct numeric_cast_traits
1209 typedef def_overflow_handler overflow_policy;
1210 typedef UseInternalRangeChecker range_checking_policy;
1211 typedef Trunc<short> rounding_policy;
1215 struct numeric_cast_traits
1221 typedef def_overflow_handler overflow_policy;
1222 typedef UseInternalRangeChecker range_checking_policy;
1223 typedef Trunc<unsigned short> rounding_policy;
1227 struct numeric_cast_traits
1233 typedef def_overflow_handler overflow_policy;
1234 typedef UseInternalRangeChecker range_checking_policy;
1235 typedef Trunc<int> rounding_policy;
1239 struct numeric_cast_traits
1245 typedef def_overflow_handler overflow_policy;
1246 typedef UseInternalRangeChecker range_checking_policy;
1247 typedef Trunc<unsigned int> rounding_policy;
1251 struct numeric_cast_traits
1257 typedef def_overflow_handler overflow_policy;
1258 typedef UseInternalRangeChecker range_checking_policy;
1259 typedef Trunc<long> rounding_policy;
1263 struct numeric_cast_traits
1269 typedef def_overflow_handler overflow_policy;
1270 typedef UseInternalRangeChecker range_checking_policy;
1271 typedef Trunc<unsigned long> rounding_policy;
1275 struct numeric_cast_traits
1281 typedef def_overflow_handler overflow_policy;
1282 typedef UseInternalRangeChecker range_checking_policy;
1283 typedef Trunc<float> rounding_policy;
1287 struct numeric_cast_traits
1293 typedef def_overflow_handler overflow_policy;
1294 typedef UseInternalRangeChecker range_checking_policy;
1295 typedef Trunc<double> rounding_policy;
1299 struct numeric_cast_traits
1305 typedef def_overflow_handler overflow_policy;
1306 typedef UseInternalRangeChecker range_checking_policy;
1307 typedef Trunc<long double> rounding_policy;
1311 struct numeric_cast_traits
1317 typedef def_overflow_handler overflow_policy;
1318 typedef UseInternalRangeChecker range_checking_policy;
1319 typedef Trunc<char> rounding_policy;
1323 struct numeric_cast_traits
1329 typedef def_overflow_handler overflow_policy;
1330 typedef UseInternalRangeChecker range_checking_policy;
1331 typedef Trunc<signed char> rounding_policy;
1335 struct numeric_cast_traits
1341 typedef def_overflow_handler overflow_policy;
1342 typedef UseInternalRangeChecker range_checking_policy;
1343 typedef Trunc<unsigned char> rounding_policy;
1347 struct numeric_cast_traits
1353 typedef def_overflow_handler overflow_policy;
1354 typedef UseInternalRangeChecker range_checking_policy;
1355 typedef Trunc<short> rounding_policy;
1359 struct numeric_cast_traits
1365 typedef def_overflow_handler overflow_policy;
1366 typedef UseInternalRangeChecker range_checking_policy;
1367 typedef Trunc<unsigned short> rounding_policy;
1371 struct numeric_cast_traits
1377 typedef def_overflow_handler overflow_policy;
1378 typedef UseInternalRangeChecker range_checking_policy;
1379 typedef Trunc<int> rounding_policy;
1383 struct numeric_cast_traits
1389 typedef def_overflow_handler overflow_policy;
1390 typedef UseInternalRangeChecker range_checking_policy;
1391 typedef Trunc<unsigned int> rounding_policy;
1395 struct numeric_cast_traits
1401 typedef def_overflow_handler overflow_policy;
1402 typedef UseInternalRangeChecker range_checking_policy;
1403 typedef Trunc<long> rounding_policy;
1407 struct numeric_cast_traits
1413 typedef def_overflow_handler overflow_policy;
1414 typedef UseInternalRangeChecker range_checking_policy;
1415 typedef Trunc<unsigned long> rounding_policy;
1419 struct numeric_cast_traits
1425 typedef def_overflow_handler overflow_policy;
1426 typedef UseInternalRangeChecker range_checking_policy;
1427 typedef Trunc<float> rounding_policy;
1431 struct numeric_cast_traits
1437 typedef def_overflow_handler overflow_policy;
1438 typedef UseInternalRangeChecker range_checking_policy;
1439 typedef Trunc<double> rounding_policy;
1443 struct numeric_cast_traits
1449 typedef def_overflow_handler overflow_policy;
1450 typedef UseInternalRangeChecker range_checking_policy;
1451 typedef Trunc<long double> rounding_policy;
1455 struct numeric_cast_traits
1461 typedef def_overflow_handler overflow_policy;
1462 typedef UseInternalRangeChecker range_checking_policy;
1463 typedef Trunc<char> rounding_policy;
1467 struct numeric_cast_traits
1473 typedef def_overflow_handler overflow_policy;
1474 typedef UseInternalRangeChecker range_checking_policy;
1475 typedef Trunc<signed char> rounding_policy;
1479 struct numeric_cast_traits
1485 typedef def_overflow_handler overflow_policy;
1486 typedef UseInternalRangeChecker range_checking_policy;
1487 typedef Trunc<unsigned char> rounding_policy;
1491 struct numeric_cast_traits
1497 typedef def_overflow_handler overflow_policy;
1498 typedef UseInternalRangeChecker range_checking_policy;
1499 typedef Trunc<short> rounding_policy;
1503 struct numeric_cast_traits
1509 typedef def_overflow_handler overflow_policy;
1510 typedef UseInternalRangeChecker range_checking_policy;
1511 typedef Trunc<unsigned short> rounding_policy;
1515 struct numeric_cast_traits
1521 typedef def_overflow_handler overflow_policy;
1522 typedef UseInternalRangeChecker range_checking_policy;
1523 typedef Trunc<int> rounding_policy;
1527 struct numeric_cast_traits
1533 typedef def_overflow_handler overflow_policy;
1534 typedef UseInternalRangeChecker range_checking_policy;
1535 typedef Trunc<unsigned int> rounding_policy;
1539 struct numeric_cast_traits
1545 typedef def_overflow_handler overflow_policy;
1546 typedef UseInternalRangeChecker range_checking_policy;
1547 typedef Trunc<long> rounding_policy;
1551 struct numeric_cast_traits
1557 typedef def_overflow_handler overflow_policy;
1558 typedef UseInternalRangeChecker range_checking_policy;
1559 typedef Trunc<unsigned long> rounding_policy;
1563 struct numeric_cast_traits
1569 typedef def_overflow_handler overflow_policy;
1570 typedef UseInternalRangeChecker range_checking_policy;
1571 typedef Trunc<float> rounding_policy;
1575 struct numeric_cast_traits
1581 typedef def_overflow_handler overflow_policy;
1582 typedef UseInternalRangeChecker range_checking_policy;
1583 typedef Trunc<double> rounding_policy;
1587 struct numeric_cast_traits
1593 typedef def_overflow_handler overflow_policy;
1594 typedef UseInternalRangeChecker range_checking_policy;
1595 typedef Trunc<long double> rounding_policy;
1599 struct numeric_cast_traits
1605 typedef def_overflow_handler overflow_policy;
1606 typedef UseInternalRangeChecker range_checking_policy;
1607 typedef Trunc<char> rounding_policy;
1611 struct numeric_cast_traits
1617 typedef def_overflow_handler overflow_policy;
1618 typedef UseInternalRangeChecker range_checking_policy;
1619 typedef Trunc<signed char> rounding_policy;
1623 struct numeric_cast_traits
1629 typedef def_overflow_handler overflow_policy;
1630 typedef UseInternalRangeChecker range_checking_policy;
1631 typedef Trunc<unsigned char> rounding_policy;
1635 struct numeric_cast_traits
1641 typedef def_overflow_handler overflow_policy;
1642 typedef UseInternalRangeChecker range_checking_policy;
1643 typedef Trunc<short> rounding_policy;
1647 struct numeric_cast_traits
1653 typedef def_overflow_handler overflow_policy;
1654 typedef UseInternalRangeChecker range_checking_policy;
1655 typedef Trunc<unsigned short> rounding_policy;
1659 struct numeric_cast_traits
1665 typedef def_overflow_handler overflow_policy;
1666 typedef UseInternalRangeChecker range_checking_policy;
1667 typedef Trunc<int> rounding_policy;
1671 struct numeric_cast_traits
1677 typedef def_overflow_handler overflow_policy;
1678 typedef UseInternalRangeChecker range_checking_policy;
1679 typedef Trunc<unsigned int> rounding_policy;
1683 struct numeric_cast_traits
1689 typedef def_overflow_handler overflow_policy;
1690 typedef UseInternalRangeChecker range_checking_policy;
1691 typedef Trunc<long> rounding_policy;
1695 struct numeric_cast_traits
1701 typedef def_overflow_handler overflow_policy;
1702 typedef UseInternalRangeChecker range_checking_policy;
1703 typedef Trunc<unsigned long> rounding_policy;
1707 struct numeric_cast_traits
1713 typedef def_overflow_handler overflow_policy;
1714 typedef UseInternalRangeChecker range_checking_policy;
1715 typedef Trunc<float> rounding_policy;
1719 struct numeric_cast_traits
1725 typedef def_overflow_handler overflow_policy;
1726 typedef UseInternalRangeChecker range_checking_policy;
1727 typedef Trunc<double> rounding_policy;
1731 struct numeric_cast_traits
1737 typedef def_overflow_handler overflow_policy;
1738 typedef UseInternalRangeChecker range_checking_policy;
1739 typedef Trunc<long double> rounding_policy;