| 541 | } |
| 542 | |
| 543 | Boxed_Number get_as(const Type_Info &inp_) const |
| 544 | { |
| 545 | if (inp_.bare_equal_type_info(typeid(int))) { |
| 546 | return Boxed_Number(get_as<int>()); |
| 547 | } else if (inp_.bare_equal_type_info(typeid(double))) { |
| 548 | return Boxed_Number(get_as<double>()); |
| 549 | } else if (inp_.bare_equal_type_info(typeid(float))) { |
| 550 | return Boxed_Number(get_as<float>()); |
| 551 | } else if (inp_.bare_equal_type_info(typeid(long double))) { |
| 552 | return Boxed_Number(get_as<long double>()); |
| 553 | } else if (inp_.bare_equal_type_info(typeid(char))) { |
| 554 | return Boxed_Number(get_as<char>()); |
| 555 | } else if (inp_.bare_equal_type_info(typeid(unsigned char))) { |
| 556 | return Boxed_Number(get_as<unsigned char>()); |
| 557 | } else if (inp_.bare_equal_type_info(typeid(wchar_t))) { |
| 558 | return Boxed_Number(get_as<wchar_t>()); |
| 559 | } else if (inp_.bare_equal_type_info(typeid(char16_t))) { |
| 560 | return Boxed_Number(get_as<char16_t>()); |
| 561 | } else if (inp_.bare_equal_type_info(typeid(char32_t))) { |
| 562 | return Boxed_Number(get_as<char32_t>()); |
| 563 | } else if (inp_.bare_equal_type_info(typeid(unsigned int))) { |
| 564 | return Boxed_Number(get_as<unsigned int>()); |
| 565 | } else if (inp_.bare_equal_type_info(typeid(long))) { |
| 566 | return Boxed_Number(get_as<long>()); |
| 567 | } else if (inp_.bare_equal_type_info(typeid(long long))) { |
| 568 | return Boxed_Number(get_as<long long>()); |
| 569 | } else if (inp_.bare_equal_type_info(typeid(unsigned long))) { |
| 570 | return Boxed_Number(get_as<unsigned long>()); |
| 571 | } else if (inp_.bare_equal_type_info(typeid(unsigned long long))) { |
| 572 | return Boxed_Number(get_as<unsigned long long>()); |
| 573 | } else if (inp_.bare_equal_type_info(typeid(int8_t))) { |
| 574 | return Boxed_Number(get_as<int8_t>()); |
| 575 | } else if (inp_.bare_equal_type_info(typeid(int16_t))) { |
| 576 | return Boxed_Number(get_as<int16_t>()); |
| 577 | } else if (inp_.bare_equal_type_info(typeid(int32_t))) { |
| 578 | return Boxed_Number(get_as<int32_t>()); |
| 579 | } else if (inp_.bare_equal_type_info(typeid(int64_t))) { |
| 580 | return Boxed_Number(get_as<int64_t>()); |
| 581 | } else if (inp_.bare_equal_type_info(typeid(uint8_t))) { |
| 582 | return Boxed_Number(get_as<uint8_t>()); |
| 583 | } else if (inp_.bare_equal_type_info(typeid(uint16_t))) { |
| 584 | return Boxed_Number(get_as<uint16_t>()); |
| 585 | } else if (inp_.bare_equal_type_info(typeid(uint32_t))) { |
| 586 | return Boxed_Number(get_as<uint32_t>()); |
| 587 | } else if (inp_.bare_equal_type_info(typeid(uint64_t))) { |
| 588 | return Boxed_Number(get_as<uint64_t>()); |
| 589 | } else { |
| 590 | throw chaiscript::detail::exception::bad_any_cast(); |
| 591 | } |
| 592 | |
| 593 | } |
| 594 | |
| 595 | template<typename Source, typename Target> |
| 596 | static void check_type() |
no test coverage detected