1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-08-03 12:49:50 +00:00

support for VC++2015

This commit is contained in:
bolero-MURAKAMI 2015-12-09 19:54:35 +09:00
parent f2c09dd3af
commit b9440c0e9c
33 changed files with 353 additions and 253 deletions

View file

@ -16,6 +16,30 @@
namespace sprout {
namespace detail {
//
// int_digits_mf
//
template<typename IntType, IntType Val, int Base = 10, bool = Val != 0>
struct int_digits_mf_impl;
template<typename IntType, IntType Val, int Base>
struct int_digits_mf_impl<IntType, Val, Base, false>
: public sprout::integral_constant<IntType, 0>
{};
template<typename IntType, IntType Val, int Base>
struct int_digits_mf_impl<IntType, Val, Base, true>
: public sprout::integral_constant<IntType, 1 + sprout::detail::int_digits_mf_impl<IntType, Val / Base, Base>::value>
{};
template<typename IntType, IntType Val, int Base = 10, bool = Val != 0>
struct int_digits_mf;
template<typename IntType, IntType Val, int Base>
struct int_digits_mf<IntType, Val, Base, false>
: public sprout::integral_constant<IntType, 1>
{};
template<typename IntType, IntType Val, int Base>
struct int_digits_mf<IntType, Val, Base, true>
: public sprout::integral_constant<IntType, 1 + sprout::detail::int_digits_mf_impl<IntType, Val / Base, Base>::value>
{};
//
// int_pow
//